Next: Les langages objets
Up: Les concepts objets
Previous: Les collections
L'héritage capture la relation de généralisation, il facilite ainsi la
modélisation des objets et la modularité et la réutilisation du code.
Définition 2.9
Héritage simple : mécanisme de transmission des propriétés d'une
classe vers une sous-classe.
Les objets suivants sont corrects
<o1, employé, (Martin, o10)>
<o2, administratif, (Dupont, o10)>
<o3, chercheur, (Martin, o11)>
<o4, employé, (Machin, o11)>
<o5, ingenieur, (Dupond, o11)>
Définition 2.10
Héritage multiple : mécanisme par lequel une sous-classe hérite des
propriétés de plus d'une super-classe.
L'héritage permet d'éviter la redondance des définitions des attributs
et des opérations.
Remarques :
- Attention aux conflits dans le cas de l'héritage multiple.
- Il peut être pratique de ne pas définir d'opération.
- Il peut être pratique de redéfinir une opération.
Exercice 2.7
Quel est le conflit éventuel avec l'objet :
<o6, stagiaire, (X, o10), (maitrise, Bordeaux)>
Définition 2.11
Classe abstraite = attributs + signature des opérations.
Une classe abstraite ne peut pas être instanciée. Elle doit être la
sur-classe d'une autre, dans laquelle les opérations devront être
implémentées.
Définition 2.12
Surcharge : redéfinition d'une opération avec un code différent.
Définition 2.13
Polymorphisme : faculté d'une opération à pouvoir s'appliquer à des
objets de classes différentes.
Remarques : le polymorphisme complique le déroulement d'un
programme. Pour une opération polymorphe, quelle est l'implémentation
à exécuter ? (c-a-d quelle est la classe réelle de l'objet ?). Ce
choix peut être décidé à la compilation où à l'exécution.
Définition 2.14
Liaison dynamique : mécanisme de sélection de code d'une opération à
l'exécution en fonction de la classe de l'objet receveur.
Remarque : la liaison dynamique est difficilement compatible avec
un typage statique fort, pourtant garant de sûreté à l'exécution.
Exercice 2.8
Les primes des employés dépendent de leur statut : les administratifs sont intéressés au recouvrement des factures, les ingénieurs au chiffre d'affaires des projets gérés, les chercheurs au nombre de brevets déposés, et les stagiaires à la bonne volonté de leur responsable.
Proposez une solution.
Next: Les langages objets
Up: Les concepts objets
Previous: Les collections
Alain GRIFFAULT
2001-09-27