|
|
4.4.4 Classe abstraite
- Un Média peut être
transporté, dupliqué, affiché. Le transport et la duplication sont indépendants
du type de Média (copie de fichiers). Par
contre, tout Média peut être affiché et ce
n’est pas la même chose pour Livre,
Vidéo, Graphique ou Texte. Un
Média ne peut pas définir comment il
s’affiche tant qu’il ne sait pas ce qu’il est.
- Il n’existe pas d’instance de la classe
Média. Un Média
n’existe qu’en tant que Livre,
Texte, Graphique ou Vidéo.
précédent suivant
UML permet de spécifier une classe de manière incomplète en
ne définissant pas certaines opérations. Ces classes dites abstraites,
n’étant pas complètement spécifiées, ne peuvent pas être instanciées. Ce
sont les classes enfants qui compléteront cette spécification en définissant
les opérations non encore définies. Ces classes sont appelées des classes
concrètes ; toutes les classes sont par défaut complètes, c’est-à-dire
avec des opérations définies. Les opérations non définies sont dites abstraites
et sont écrites en italique dans les diagrammes de classes. Dès qu’une
opération est abstraite, sa classe devient abstraite.
Une seconde utilisation des classes abstraites est
d’empêcher l’instanciation de la classe. Par exemple, dans notre
étude de cas Studs, la classe Scrutin factorise les caractéristiques et les comportements
communs à tous les scrutins mais nous désirons que tous les scrutins créés
soient soit des ScrutinPlagesHoraires soit des
ScrutinPréférences. Cela est obtenu en rendant
la classe Scrutin abstraite. Dans cette seconde
utilisation des classes abstraites, il est ainsi possible qu’aucune
opération de la classe abstraite ne soit abstraite.
Cf. le glossaire pour la définition des termes « classe
abstraite » et « classe concrète ».
D. Conan, C. Taconet, C. Bac,
Télécom SudParis, CSC 4002, Octobre 2015
|
|