L'héritage
Définition
L’héritage est un pilier de la programmation orientée objet, qui permet de factoriser dans une classe de base, des membres communs à un ensemble de classes qui dérivent de cette classe (appelées classes héritées ou dérivées). En C#, l’héritage multiple n’est pas autorisé : une classe peut dériver que d’une seule autre classe.
Lors de la conception, deux processus permettent de mettre en œuvre l’héritage (ils peuvent mener au même arbre d’héritage) :
-
La spécialisation, qui consiste à éclater les membres d’une classe (de base) dans des classes dérivées, en laissant les membres communs dans la classe de base et déplaçant les membres spécifiques dans les classes dérivées.
-
La généralisation, qui consiste à partir de classes dérivées, factoriser un ensemble de membres communs dans une classe de base, en laissant dans les classes dérivées les membres qui leur sont propres.
En C#, toute classe a une classe de base, excepté la classe System.Object. Si aucune classe n’est précisée, alors cette dernière est la classe de base.
Voici un exemple d’héritage :
Un beignet et un donut sont des gâteaux que nous pouvons créer. En matière de conception, la classe Gateau joue un rôle technique, qui consiste à factoriser des membres communs entre ces deux classes.
