IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

propriété protégée de classe parent


Sujet :

C#

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2015
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2015
    Messages : 107
    Points : 23
    Points
    23
    Par défaut propriété protégée de classe parent
    bonjour j'utilise une propriété de classe parent appelé "Contribuable" et puis je l'appélé dans un classe dérivée appelé "ContribuableMoral" mais au cours d'excution elle m'affiche null dans le methode de classe dérivée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    public class contribuable
        {
           protected string MATRICULE_FISCALE;
     
     public contribuable(string _matricule_fiscale)
     
    {
            this.MATRICULE_FISCALE    = _matricule_fiscale;     //exemple de MATRICULE_FISCALE=123456789
    }
     
     public void insertContribuable()
            {
              string  sql = "insert into CLIENT (MATRICULE_FISCALE)values('" +this.MATRICULE_FISCALE    +"')";   //MATRICULE_FISCALE=123456789
     
    }
     
     
    }
     
     
     
     class ContribuableMoral:contribuable
       {
     
     public ContribuableMoral()
           {
     
           }
     
    public void InsertionMorale()
           {
               string sqlMorale = "insert into CLIENT_MORALE(MATRICULE_FISCALE) values('" + MATRICULE_FISCALE + "')";  //MATRICULE_FISCALE=null
    }
    }
    normalement la propriété déclaré au classe parents peut être appelé au classe dérivée?

  2. #2
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Salut,

    ta classe fille n'initialise pas l'attribut protected de la classe mère (dans le code que tu nous montres en tout cas, code qui ne devrait d'ailleurs pas compilé).
    Plus je connais de langages, plus j'aime le C.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2015
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2015
    Messages : 107
    Points : 23
    Points
    23
    Par défaut
    Citation Envoyé par jopopmk Voir le message
    Salut,

    ta classe fille n'initialise pas l'attribut protected de la classe mère (dans le code que tu nous montres en tout cas, code qui ne devrait d'ailleurs pas compilé).
    non le problème que j'instancie ContribuableMoral
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    contrib.insertContribuable();
    ContribuableMoral contribMoral=new ContribuableMoral();
    contribMoral.InsertionMorale();
    aprés l'instantiation de contribuable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    contribuable contrib=new contribuable("123456789");
    je perdre le matricule_fiscale qui devient null

  4. #4
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    gné ... je sais pas quoi te répondre, je comprends pas ce que t'attends de ton code qui ne fait pas vraiment sens. Avec ce code tu crées une nouvelle instance de ContribuableMoral mais à aucun moment tu ne définis de valeur pour l'attribut MATRICULE_FISCALE. Instancier un objet de la classe mère ne va rien y changer, les deux entités ne sont pas connectées par l'opération du saint esprit.

    Voilà un exemple qui pourrait t'aider :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    // la classe mère
    public class Maman {
    	// le fameux attribut protected
    	protected string attribut;
    	// le constructeur paramétré
    	public Maman(string attVal) {
    		this.attribut = attVal;
    	}
    }
    // la classe fille
    public class Fille : Maman {
    	// le constructeur paramétré qui référence le constructeur de la classe de base
    	public Fille(string attVal) : base(attVal) {}
    	// une propriété pour tester que la valeur est bien renseignée
    	public string Attribut { get { return base.attribut; } }
    }
     
    // quelque part dans le code
    // ...
    	Fille fifilleASaMemere = new Fille("123456789");
    	MessageBox.Show(fifilleASaMemere.Attribut);
    // ...
    Plus je connais de langages, plus j'aime le C.

Discussions similaires

  1. Réponses: 15
    Dernier message: 01/03/2015, 13h16
  2. Appel propriété classe parente
    Par lolo5935 dans le forum C#
    Réponses: 5
    Dernier message: 05/04/2011, 10h17
  3. [POO]héritage du constructeur de la classe parente
    Par new_wave dans le forum Langage
    Réponses: 7
    Dernier message: 10/03/2006, 14h25
  4. Réponses: 3
    Dernier message: 09/02/2006, 17h01
  5. Conception d'une classe parente
    Par VincentB dans le forum Langage
    Réponses: 9
    Dernier message: 24/06/2003, 17h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo