POO-Cours6-Heritage2.pdf

Hiérarchie des classes

<aside> ☝ L’héritage définit un ordre partiel entre les classes

</aside>

Vocabulaire

<aside> ☝ Une classe A hérite (directement ou par transitivité) d’une classe B

Untitled

L’ensemble des classes forme une hiérarchie

Untitled

instanceof

m instanceof Animal retourne true si la variable m référence une instance d’Object, false sinon

m instanceof Object // return true ou false

Compatibilité entre classes

<aside> ☝ Une classe est compatibles avec tous ses ascendants

</aside>

<aside> 🧪 Une instance d'une classe est aussi instance de tous ses ascendants

</aside>

<aside> 💡 Si la classe B est descendante d’une classe A, on peut toujours fournir une référence sur B quand on attend une référence sur A

</aside>

Untitled

Untitled

Exemples Compatibilité entre classes

Une classe n’est compatible avec aucune de ses descendantes

<aside> 🔑 Si la classe A est descendante de la classe B on ne peut jamais fournir une référence sur B quand on attend une référence sur A.

</aside>