Héritage
Une classe peut hériter d’une autre, c’est à dire posséder les mêmes méthodes et attributs que celle-ci et ajouter également d’autres. Cette nouvelle classe est appelée « classe fille » ou « sous-classe ». Elle hérite d’une « classe mère » ou « classe de base » ou « super-classe ».
Pour accéder aux membres de la classe de base à partir d’une sous-classe on . utilise le mot clé base.
Exemple
class MaClasseDerivee: MaClasseBase { // ... }
La classe, MaClasseDerivee hérite de la classe MaClasseBase
Règles de contrôle de l’héritage
Tous les membres de la classe de base sont héréditaires (sauf les constructeurs d’instance, les destructeurs et les constructeurs statiques).
Un membre dans la classe dérivée avec le même nom que dans la classe de base, cache ce dernier. Le membre de la classe de base n’est pas accessible par l’intermédiaire de la classe dérivée.
Les fonctions membres dans la classe de base peuvent être remplacées par celles de la classe dérivée: polymorphisme.
Une classe peut hériter d’une classe seulement (pas d’héritage multiple). Cependant, elle peut implémenter plus d’une interface.
Les structures ne peuvent pas hériter de classes ou d’autres structures ni être héritées, mais elles peuvent implémenter des interfaces.
Exemple