Comment Ca Marche - Communauté informatique  
   
Accueil - Encyclopédie informatiqueTélécharger l'encyclopédieContribuer à cet article

Introduction à la programmation orientée objet - Héritage

Héritage Encyclopédie


La notion d'héritage

L'héritage (en anglais inheritance) est un principe propre à la programmation orientée objet, permettant de créer une nouvelle classe à partir d'une classe existante. Le nom d'"héritage" (pouvant parfois être appelé dérivation de classe) provient du fait que la classe dérivée (la classe nouvellement créée) contient les attributs et les méthodes de sa superclasse (la classe dont elle dérive). L'intérêt majeur de l'héritage est de pouvoir définir de nouveaux attributs et de nouvelles méthodes pour la classe dérivée, qui viennent s'ajouter à ceux et celles héritées.
Par ce moyen on crée une hiérarchie de classes de plus en plus spécialisées. Cela a comme avantage majeur de ne pas avoir à repartir de zéro lorsque l'on veut spécialiser une classe existante. De cette manière il est possible d'acheter dans le commerce des librairies de classes, qui constituent une base, pouvant être spécialisées à loisir (on comprend encore un peu mieux l'intérêt pour l'entreprise qui vend les classes de protéger les données membres grâce à l'encapsulation...).

Hiérarchie des classes

Il est possible de représenter sous forme de hiérarchie de classes, parfois appelée arborescence de classes, la relation de parenté qui existe entre les différentes classes. L'arborescence commence par une classe générale appelée superclasse (parfois classe de base, classe parent, classe ancêtre, classe mère ou classe père, les métaphores généalogiques sont nombreuses). Puis les classes dérivées (classe fille ou sous-classe) deviennent de plus en plus spécialisées. Ainsi, on peut généralement exprimer la relation qui lie une classe fille à sa mère par la phrase "est un" (de l'anglais "is a").

Hiérarchie des classes

Héritage multiple

Certains langages orientés objet, tels que le C++, permettent de faire de l'héritage multiple, ce qui signifie qu'ils offrent la possibilité de faire hériter une classe de deux superclasses. Ainsi, cette technique permet de regrouper au sein d'une seule et même classe les attributs et méthodes de plusieurs classes.

Héritage multiple

Discussions pertinentes trouvées dans le forum

29/12 23h57 c programmation héritage [C++] difficultés de programmation & héritage Développement 05/01 01h01->mamiemando16
08/03 10h30 heritage classes java heritage classes en java Développement 09/03 07h59->choubaka5
25/01 15h38 heritage gerer constructeurs. heritage en c++ : gerer les constructeurs. Développement 28/01 20h04->tafiscobar12
18/07 11h49 heritage java heritage java Développement 18/07 13h39->Samya11
15/07 18h33 héritage multiple héritage multiple Développement 16/07 17h07->ninio11
25/06 16h40 heritage private heritage en c++ : pb de private Développement 28/06 10h33->pom8
30/06 12h01 héritage [C++] héritage Développement 30/06 16h53->marvinrouge7
03/08 22h33 classe surchage héritage polymorphise Classe, surchage, héritage et polymorphise Développement 08/08 02h23->tachag5
17/06 10h04 c# heritage virtual override [C#]Heritage, virtual, override,... Développement 08/11 13h30->moi15
18/12 23h51 héritage java héritage en java Développement 20/12 14h46->do'urden4
Discussion fermée Problème résolu Héritage Plus de discussions sur « Héritage »

Ce document intitulé « Introduction à la programmation orientée objet - Héritage » issu de l'encyclopédie informatique Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.