Controler la création de classes héritées

Description

J'ai pris dans cet exemple une classe mère nommée Employe ainsi que classe fille (qui hérite de Employe) : technicien et Vendeur .

Source / Exemple :


using Csl = System.Console ;

namespace ConsoleApplication6
{
	/// <summary>
	/// COMMENT CONTROLER LA CREATION DE CLASSES HERITEES ...
	/// </summary>
	
	class Class1
	{
		public static int Main()
		{
			Employe e = new Employe ();
			Employe e2 = new Employe(20,"Gerard","Manvu");
			Technicien e3 = new Technicien();
			Technicien e4 = new Technicien(52,"SAHRA","FRAICHI","INFORMATIQUE");
			Vendeur e5 = new Vendeur(29,"dédé","célui","MICROSOFT VISUAL STUDIO .NET");

			Csl.WriteLine("|||||||||||||||||||||||||||||||||||||||||||||");

			Csl.WriteLine("Employé 1:");
			Csl.Write("age : ");
			Csl.WriteLine(e.age );
			Csl.Write("nom: ");
			Csl.WriteLine(e.nom);
			Csl.Write("prenom: ");
			Csl.WriteLine(e.prenom);

			Csl.WriteLine("|||||||||||||||||||||||||||||||||||||||||||||");

			Csl.WriteLine("Employé 2:");
			Csl.Write("age : ");
			Csl.WriteLine(e2.age );
			Csl.Write("nom: ");
			Csl.WriteLine(e2.nom);
			Csl.Write("prenom: ");
			Csl.WriteLine(e2.prenom);

			Csl.WriteLine("|||||||||||||||||||||||||||||||||||||||||||||");

			Csl.WriteLine("Employé 3:");
			Csl.Write("age : ");
			Csl.WriteLine(e3.age );
			Csl.Write("nom: ");
			Csl.WriteLine(e3.nom);
			Csl.Write("prenom: ");
			Csl.WriteLine(e3.prenom);

			Csl.WriteLine("|||||||||||||||||||||||||||||||||||||||||||||");

			Csl.WriteLine("Employé 4:");
			Csl.Write("age : ");
			Csl.WriteLine(e4.age );
			Csl.Write("nom: ");
			Csl.WriteLine(e4.nom);
			Csl.Write("prenom: ");
			Csl.WriteLine(e4.prenom);
			Csl.Write("technicien en ");
			Csl.WriteLine(e4.technique);

			Csl.WriteLine("|||||||||||||||||||||||||||||||||||||||||||||");

			Csl.WriteLine("Employé 5:");
			Csl.Write("age : ");
			Csl.WriteLine(e5.age );
			Csl.Write("nom: ");
			Csl.WriteLine(e5.nom);
			Csl.Write("prenom: ");
			Csl.WriteLine(e5.prenom);
			Csl.Write("S'occupe des ventes de ");
			Csl.WriteLine(e5.produit );

			Csl.ReadLine ();
			return 0;
		}
	}
	class Employe
	{
		public int age;
		public string nom;
		public string prenom;

		public Employe()
		{
			Csl.WriteLine("CONSTRUCTEUR PAR DEFAULT DE EMPLOYE APPELLE !");
			age = 0;
			nom = " ";
			prenom = " ";
		}
		public Employe(int a,string n,string p)
		{
			Csl.WriteLine("2nd Constructeur de LA CLASS EMPLOYE A ETE APPELLE !");
			age = a;
			nom = n;
			prenom = p;
		}
	}
	class Technicien : Employe // hérite d'Employe
	{
		public string technique;

		public Technicien() // constructeur par défault
		{
			Csl.WriteLine(" TECHNICIEN CREE ");
		}
		public Technicien(int a,string n,string p,string t)//2nd constructeur
		{
			Csl.WriteLine(" CREATION TECHNICIEN via 2nd constructeur de technicien ");
			age = a;
			nom = n;
			prenom = p;
			technique = t;
		}
	}
	class Vendeur : Employe // hérite d'Employe
	{
		public string produit;
		public Vendeur()// constructeur par default
		{
			Csl.WriteLine("CONSTRUCTEUR PAR DEFAULT DE VENDEUR A ETE APPELLE ");
		}
		public Vendeur(int a,string n, string p, string pr)// 2nd constructeur
		{
			Csl.WriteLine("creation vendeur 2nd CONSTRUCTEUR DE VENDEUR A ETE APPELLE");
			age = a;
			nom = n;
			prenom = p;
			produit = pr;
		}

	}
}
// ptit pub pour mon association (le FPL): http://endsub.free.fr ;)
// conclusion, le constructeur appelé est 'implicitement déclaré ' en fonction de ses arguments
// sachant que le constructeur par default de la class EMPLOYE est appellé ( -> héritage )

Conclusion :


Si on creer un objet Technicien oubien Vendeur, le constructeur par défault de la classe Employe (mere) est appelé.
Ici on vas voir comment appelé un autre constructeur que celui par défaut

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.