32
Chapitre 2. Les diagrammes structurels (ou statiques)
2.1.6 Généralisation et spécialisation
La généralisation/spécialisation et l’héritage simple
La généralisation est la relation entre une classe et deux autres classes ou plus partageant un sous-ensemble commun d’attributs et/ou d’opérations.
La classe qui est affinée s’appelle super-classe, les classes affinées s’appellent
sous-classes. L’opération qui consiste à créer une super-classe à partir de classes
s’appelle la généralisation. Inversement la spécialisation consiste à créer des sousclasses à partir d’une classe.
Formalisme et exemple
La figure 2.25 montre le formalisme de la généralisation-spécialisation sous forme
d’exemple général. Dans cet exemple :
• la sous-classe A1 hérite de A, c’est une spécialisation de A ;
• la sous-classe A2 hérite de A, c’est une spécialisation de A.
Figure 2.25 — Formalisme de la relation de généralisation
L’héritage permet à une sous-classe de disposer des attributs et opérations de la
classe dont elle dépend. Un discriminant peut être utilisé pour exploiter le critère de
spécialisation entre une classe et ses sous-classes. Le discriminant est simplement
indiqué sur le schéma, puisque les valeurs prises par ce discriminant correspondent à
chaque sous-classe.
Classe A
Spécialisation
(héritage)
Généralisation
Sous-classe
A1
Sous-classe
A2
Précédent

- 47/242

Suivant