Constructeur de class enfant

Ammar.Dev Messages postés 52 Date d'inscription mercredi 5 octobre 2005 Statut Membre Dernière intervention 28 janvier 2021 - 30 nov. 2015 à 09:15
elguevel Messages postés 718 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 22 novembre 2016 - 22 nov. 2016 à 22:30
bonjour, j'ai un question pour l'héritage entre deux classes. je crée un classe parent "Contribuable" et un autre classe enfant utilisateur, puis je mis un constructeur pour le classe parent mais quand j'insère un constructeur au classe enfant il m'affiche cette erreur "Error 1 'contribuable' does not contain a constructor that takes 0 arguments contribuable.cs"
public class utilisateur : contribuable
    {
        public utilisateur()
        {
        }
    }
   public class contribuable
    {
        public string MATRICULE_FISCALE, ADRESSE_PERSONEL, ADRESSE_SIEGE, E_MAIL, TYPE_CLIENT, ACTIVITE_PRINCIPALE,
            ACTIVITE_SECONDAIRE, REGISTRE_COMMERCIAL, BANQUE1, AGENCE1, RIB1, BANQUE2, AGENCE2, RIB2,  DATE_SAISIE,
            NOM_ENTREPRISE, Nom_Contribuable_Physique, Prenom_Contribuable_Physique, Nom_Contribuable_Forfaitaire,
            Prenom_Contribuable_Forfaitaire, NOM_GERANT, PRENOM_GERANT, ADRESS_PERSONNEL_GERANT, MAIL_GERANT;
        public int NUM_TEL1, NUM_TEL2, NUM_FAXE, NUM_MOBILE, NUM_TEL_GERANT, MOBILE_GERANT,CIN_GERANT;
 
        public contribuable(string _matricule_fiscale,int _num_tel1, int _num_tel2, int _num_faxe,int _num_mobile,string _adresse_personel,string _adresse_siege,string _e_mail,string _type_client,string _activite_principale,string _activite_secondaire,string _registre_commercial,string _banque1,string _agence1,string _rib1,string _banque2,string _agence2,string _rib2,int _cin,string _date_saisie)
        {
        this.MATRICULE_FISCALE    = _matricule_fiscale;
        this.NUM_TEL1             = _num_tel1;
        this.NUM_TEL2             = _num_tel2;
        this.NUM_FAXE             = _num_faxe;
        this.NUM_MOBILE           = _num_mobile;
        this.ADRESSE_PERSONEL     = _adresse_personel;
        this.ADRESSE_SIEGE        = _adresse_siege;
        this.E_MAIL               = _e_mail;
        this.TYPE_CLIENT          =_type_client;
        this.ACTIVITE_PRINCIPALE  =  _activite_principale;
        this.ACTIVITE_SECONDAIRE  =  _activite_secondaire;
        this.REGISTRE_COMMERCIAL  =  _registre_commercial;
        this.BANQUE1              = _banque1;
        this.AGENCE1              = _agence1;
        this.RIB1                 = _rib1;
        this.BANQUE2              = _banque2;
        this.AGENCE2              = _agence2;
        this.RIB2                 = _rib2;
        this.CIN_GERANT                  = _cin;
        this.DATE_SAISIE          = _date_saisie;
           }


est - ce que le constructeur enfant ne peut pas créer sans un constructeur vide de calsse parent?

2 réponses

Damboushow Messages postés 23 Date d'inscription vendredi 1 janvier 2016 Statut Membre Dernière intervention 9 mai 2016 2
2 janv. 2016 à 20:47
Bonjour, ce qui est important c'est de savoir qui hérite de qui. j'ai l'impression que est monté à l'envers.

Si l'utilisateur est un contribuable tu es correctes, il faut juste que tu changes ta classe et ton constructeur contribuable par utilisateur.

si le contribuable est un utilisateur, il faut changer l'ordre dans ton instance de classe par "contribuable : utilisateur" et alors ça vas fonctionner si ta classe utilisateur est correcte.
0
elguevel Messages postés 718 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 22 novembre 2016 3
22 nov. 2016 à 22:30
Bonjour,

J'ai moi aussi l'impression que l'heritage est inversé. Et je me demande si dans ton cas c'est vraiment utile ?

Sinon pour resoudre ton probleme soit tu rajoutes un constructeur vide dans contribuable. Soit tu mets le meme constructeur que contribuable dans utilisateur mais en passant les parametres au parent en utilisant le mot clé base.

++
0
Rejoignez-nous