Comment entrer un objet dans un constructeur et l

Signaler
Messages postés
46
Date d'inscription
samedi 10 mars 2018
Statut
Membre
Dernière intervention
24 janvier 2019
-
Messages postés
15921
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
10 mai 2021
-
Salut a tous;
je veux conaitre comment entrer un objet dans un constructeur et le retourner ;
svp j ai besoin de votre reponse;

3 réponses

Messages postés
15921
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
10 mai 2021
540
Bonjour
Je ne comprends pas ta question, peux tu expliquer plus ton besoin?
Messages postés
46
Date d'inscription
samedi 10 mars 2018
Statut
Membre
Dernière intervention
24 janvier 2019

Salut
j ai un objet d une classe et je fais l heritage
Article s1=new Article(10,"Paris","Berlin",100);
Article_ensolde s2=new Article_ensolde(s1,10);
je veux conaitre comment faire un constricteur de s2
et merci
Messages postés
15921
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
10 mai 2021
540
Alors en admettant que Article ressemble à ça
    class Article
    {
        public Article(int LeNombre1, string LaVille1, string LaVille2, int LeNombre2)
        {
            Nombre1 = LeNombre1;
            Nombre2 = LeNombre2;
            Ville1 = LaVille1;
            Ville2 = LaVille2;
        }

        public int Nombre1 { get; set; }

        public int Nombre2 { get; set; }

        public string Ville1 { get; set; }

        public string Ville2 { get; set; }
    }


Tu peux ajouter un constructeur, qui prend un Article en paramètre

        public Article(Article LArticle)
        { }

Dans ce constructeur, on pourrait mettre
            Nombre1 = LArticle.Nombre1;
            Nombre2 = LArticle.Nombre2;
            Ville1 = LArticle.Ville1;
            Ville2 = LArticle.Ville2;

Mais ça fait un peu doublon, alors on va appeler l'autre constructeur
        public Article(Article LArticle):this(LArticle.Nombre1,LArticle.Ville1,LArticle.Ville2,LArticle.Nombre2)
        {  }

On utilise :this


Pour une classe dérivée, on peut appeler un constructeur de la classe mère dans le même principe avec :base
   class Article_enSolde:Article
    {
        public Article_enSolde(Article LArticle, int LeNombre3):base(LArticle)
        {

            Nombre3 = LeNombre3;
        }

        public int Nombre3 { get; set; }
    }


Merci beaucoup
Messages postés
15921
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
10 mai 2021
540