Sommaire: Cours langage C gratuit: L’héritage
L’héritage simple
Mode de dérivation
Redéfinition de méthodes dans la classe dérivée
Ajustement d’accès
Héritage des constructeurs/destructeurs
Héritage et amitié
Conversion de type dans une hiérarchie de classes
Héritage multiple
Héritage virtuel
Polymorphisme
Classes abstraites
Extrait du cours langage C gratuit: L’héritage
L’HERITAGE SIMPLE
L’héritage, également appelé dérivation, permet de créer une nouvelle classe à partir d’une classe déjà existante, la classe de base(ou super classe).
« Il est plus facile de modifier que de réinventer » La nouvelle classe (ou classe dérivée ou sous classe) hérite de tous les membres, qui ne sont pas privés, de la classe de base et ainsi réutiliser le code déjà ecrit pour la classe de base.
On peut aussi lui ajouter de nouveaux membres ou redéfinir des méthodes.
MODE DE DERIVATION
Lors de la définition de la classe dérivée il est possible de spécifier le mode de dérivation par l’emploi d’un des mots−clé suivants :
public, protecte dou private.
Ce mode de dérivation détermine quels membres de la classe de base sont accessibles dans la classe dérivée.
Au cas où aucun mode de dérivation n’est spécifié, le compilateur C++ prend par défaut le mot−clé private pour une classe et public pour une structure.
Les membres privés de la classe de base ne sont jamais accessibles par les membres des classes dérivées.
Héritage public :
Il donne aux membres publics et protégés de la classe de base le même statut dans la classe dérivée.
C’est la forme la plus courante d’héritage, car il permet de modéliser les relations « Y est une sorte de X » ou « Y est une spécialisation de la classe de base X ».
Héritage privé :
Il donne aux membres publics et protégés de la classe de base le statut de membres privés dans la classe dérivée.
Il permet de modéliser les relations « Y est composé de un ou plusieurs X » .
Plutôt que d’hériter de façon privée de la classe de base X, on peut faire de la classe de base une donnée membre (composition).
Héritage protégé :
Il donne aux membres publics et protégés de la classe de base le statut de membres protégés dans la classe dérivée.
L’héritage fait partie de l’interface mais n’est pas accessible aux utilisateurs.
………
Cours langage C gratuit: L’héritage (153 KO) (Cours PDF)