Génie Logiciel - 4 - Diagramme de Classes UMLidir.aitsadoune.free.fr/cours/GL/4.pdf ·...

Preview:

Citation preview

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Génie Logiciel4 - Diagramme de Classes UML

Idir AIT SADOUNE

idir.aitsadoune@centralesupelec.fr

Plateau du Moulon - Gif sur Yvette - France

1e année CentraleSupelec - Séquence 4

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Objectifs du cours

Apprendre à modéliser les concepts et les entités constituant un système avec UML

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

La vue statique : diagrammes structurels

Description de l’organisation des objets dans le systèmes à modéliser (structures etrelations)Les outils offerts par UML pour spécifier la vue statique

Diagramme de classe : décrit les entités (classes et interfaces) constituant le systèmeà modéliser et les relations statiques entre celles-ci.Diagramme d’objets : décrit les liens entre des instances réelles de classes à momentde l’exécution du système.Diagramme de paquetage : décrit les regroupements des classes et des interfaces.Diagramme de composants : décrit l’organisation (les classes) et les dépendancesentre les composants (services offerts ou utilisés).Diagramme de structure composites : décrit les composants complexes d’un systèmeen terme de combinaisons entre les composants.Diagramme de déploiement : décrit les modalités d’installation et d’exécution d’unsystème.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

La vue statique : diagrammes structurels

Description de l’organisation des objets dans le systèmes à modéliser (structures etrelations)

Les outils offerts par UML pour spécifier la vue statique

Diagramme de classe : décrit les entités (classes et interfaces) constituant le systèmeà modéliser et les relations statiques entre celles-ci.Diagramme d’objets : décrit les liens entre des instances réelles de classes à momentde l’exécution du système.Diagramme de paquetage : décrit les regroupements des classes et des interfaces.Diagramme de composants : décrit l’organisation (les classes) et les dépendancesentre les composants (services offerts ou utilisés).Diagramme de structure composites : décrit les composants complexes d’un systèmeen terme de combinaisons entre les composants.Diagramme de déploiement : décrit les modalités d’installation et d’exécution d’unsystème.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

La vue statique : diagrammes structurels

Description de l’organisation des objets dans le systèmes à modéliser (structures etrelations)Les outils offerts par UML pour spécifier la vue statique

Diagramme de classe : décrit les entités (classes et interfaces) constituant le systèmeà modéliser et les relations statiques entre celles-ci.Diagramme d’objets : décrit les liens entre des instances réelles de classes à momentde l’exécution du système.Diagramme de paquetage : décrit les regroupements des classes et des interfaces.Diagramme de composants : décrit l’organisation (les classes) et les dépendancesentre les composants (services offerts ou utilisés).Diagramme de structure composites : décrit les composants complexes d’un systèmeen terme de combinaisons entre les composants.Diagramme de déploiement : décrit les modalités d’installation et d’exécution d’unsystème.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

La vue statique : diagrammes structurels

Description de l’organisation des objets dans le systèmes à modéliser (structures etrelations)Les outils offerts par UML pour spécifier la vue statique

Diagramme de classe : décrit les entités (classes et interfaces) constituant le systèmeà modéliser et les relations statiques entre celles-ci.

Diagramme d’objets : décrit les liens entre des instances réelles de classes à momentde l’exécution du système.Diagramme de paquetage : décrit les regroupements des classes et des interfaces.Diagramme de composants : décrit l’organisation (les classes) et les dépendancesentre les composants (services offerts ou utilisés).Diagramme de structure composites : décrit les composants complexes d’un systèmeen terme de combinaisons entre les composants.Diagramme de déploiement : décrit les modalités d’installation et d’exécution d’unsystème.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

La vue statique : diagrammes structurels

Description de l’organisation des objets dans le systèmes à modéliser (structures etrelations)Les outils offerts par UML pour spécifier la vue statique

Diagramme de classe : décrit les entités (classes et interfaces) constituant le systèmeà modéliser et les relations statiques entre celles-ci.Diagramme d’objets : décrit les liens entre des instances réelles de classes à momentde l’exécution du système.

Diagramme de paquetage : décrit les regroupements des classes et des interfaces.Diagramme de composants : décrit l’organisation (les classes) et les dépendancesentre les composants (services offerts ou utilisés).Diagramme de structure composites : décrit les composants complexes d’un systèmeen terme de combinaisons entre les composants.Diagramme de déploiement : décrit les modalités d’installation et d’exécution d’unsystème.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

La vue statique : diagrammes structurels

Description de l’organisation des objets dans le systèmes à modéliser (structures etrelations)Les outils offerts par UML pour spécifier la vue statique

Diagramme de classe : décrit les entités (classes et interfaces) constituant le systèmeà modéliser et les relations statiques entre celles-ci.Diagramme d’objets : décrit les liens entre des instances réelles de classes à momentde l’exécution du système.Diagramme de paquetage : décrit les regroupements des classes et des interfaces.

Diagramme de composants : décrit l’organisation (les classes) et les dépendancesentre les composants (services offerts ou utilisés).Diagramme de structure composites : décrit les composants complexes d’un systèmeen terme de combinaisons entre les composants.Diagramme de déploiement : décrit les modalités d’installation et d’exécution d’unsystème.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

La vue statique : diagrammes structurels

Description de l’organisation des objets dans le systèmes à modéliser (structures etrelations)Les outils offerts par UML pour spécifier la vue statique

Diagramme de classe : décrit les entités (classes et interfaces) constituant le systèmeà modéliser et les relations statiques entre celles-ci.Diagramme d’objets : décrit les liens entre des instances réelles de classes à momentde l’exécution du système.Diagramme de paquetage : décrit les regroupements des classes et des interfaces.Diagramme de composants : décrit l’organisation (les classes) et les dépendancesentre les composants (services offerts ou utilisés).

Diagramme de structure composites : décrit les composants complexes d’un systèmeen terme de combinaisons entre les composants.Diagramme de déploiement : décrit les modalités d’installation et d’exécution d’unsystème.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

La vue statique : diagrammes structurels

Description de l’organisation des objets dans le systèmes à modéliser (structures etrelations)Les outils offerts par UML pour spécifier la vue statique

Diagramme de classe : décrit les entités (classes et interfaces) constituant le systèmeà modéliser et les relations statiques entre celles-ci.Diagramme d’objets : décrit les liens entre des instances réelles de classes à momentde l’exécution du système.Diagramme de paquetage : décrit les regroupements des classes et des interfaces.Diagramme de composants : décrit l’organisation (les classes) et les dépendancesentre les composants (services offerts ou utilisés).Diagramme de structure composites : décrit les composants complexes d’un systèmeen terme de combinaisons entre les composants.

Diagramme de déploiement : décrit les modalités d’installation et d’exécution d’unsystème.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

La vue statique : diagrammes structurels

Description de l’organisation des objets dans le systèmes à modéliser (structures etrelations)Les outils offerts par UML pour spécifier la vue statique

Diagramme de classe : décrit les entités (classes et interfaces) constituant le systèmeà modéliser et les relations statiques entre celles-ci.Diagramme d’objets : décrit les liens entre des instances réelles de classes à momentde l’exécution du système.Diagramme de paquetage : décrit les regroupements des classes et des interfaces.Diagramme de composants : décrit l’organisation (les classes) et les dépendancesentre les composants (services offerts ou utilisés).Diagramme de structure composites : décrit les composants complexes d’un systèmeen terme de combinaisons entre les composants.Diagramme de déploiement : décrit les modalités d’installation et d’exécution d’unsystème.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

La vue statique : diagrammes structurels

Dans ce cours, on va étudier :

Diagramme de classe : décrit les entités (classes et interfaces) constituant le systèmeà modéliser et les relations statiques entre celles-ci.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Plan

1 Classe

2 Association

3 Généralisation/ Spécialisation

4 Classe abstraite et Interface

5 UML vers Java

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

1 - ClasseDéfinition de la Classe en UMLLes éléments de la Classe en UML

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

1 - ClasseDéfinition de la Classe en UMLLes éléments de la Classe en UML

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Classe et Objet : définition

Une classe représente un groupe d’objets possédant des états et un comportementcommuns.Une classe peut représenter un concept concret (voiture, facture ...) ou un conceptabstrait (stratégie ...).En UML, une classe représente un type de classificateur .

Exemple

Une classe : AutomobileDes objets : Renault, Peugeot, Volkswagen, ...

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Classe et Objet : définition

Une classe représente un groupe d’objets possédant des états et un comportementcommuns.

Une classe peut représenter un concept concret (voiture, facture ...) ou un conceptabstrait (stratégie ...).En UML, une classe représente un type de classificateur .

Exemple

Une classe : AutomobileDes objets : Renault, Peugeot, Volkswagen, ...

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Classe et Objet : définition

Une classe représente un groupe d’objets possédant des états et un comportementcommuns.Une classe peut représenter un concept concret (voiture, facture ...) ou un conceptabstrait (stratégie ...).

En UML, une classe représente un type de classificateur .

Exemple

Une classe : AutomobileDes objets : Renault, Peugeot, Volkswagen, ...

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Classe et Objet : définition

Une classe représente un groupe d’objets possédant des états et un comportementcommuns.Une classe peut représenter un concept concret (voiture, facture ...) ou un conceptabstrait (stratégie ...).En UML, une classe représente un type de classificateur .

Exemple

Une classe : AutomobileDes objets : Renault, Peugeot, Volkswagen, ...

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Classe et Objet : définition

Une classe représente un groupe d’objets possédant des états et un comportementcommuns.Une classe peut représenter un concept concret (voiture, facture ...) ou un conceptabstrait (stratégie ...).En UML, une classe représente un type de classificateur .

Exemple

Une classe : AutomobileDes objets : Renault, Peugeot, Volkswagen, ...

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Classe et Objet : définition

Une classe représente un groupe d’objets possédant des états et un comportementcommuns.Une classe peut représenter un concept concret (voiture, facture ...) ou un conceptabstrait (stratégie ...).En UML, une classe représente un type de classificateur .

Exemple

Une classe : Automobile

Des objets : Renault, Peugeot, Volkswagen, ...

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Classe et Objet : définition

Une classe représente un groupe d’objets possédant des états et un comportementcommuns.Une classe peut représenter un concept concret (voiture, facture ...) ou un conceptabstrait (stratégie ...).En UML, une classe représente un type de classificateur .

Exemple

Une classe : AutomobileDes objets : Renault, Peugeot, Volkswagen, ...

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Définition d’une classe en UML

En UML, une classe est définie par un cadre rectangulaire comportant 3 zones :

1 Zone contenant le nom de la classe2 Zone contenant les attributs de la classe3 Zone contenant les opérations de la classe

Représentation d’une classe en UML

NomClasse

ListeAttributs

ListeOpérations

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Définition d’une classe en UML

En UML, une classe est définie par un cadre rectangulaire comportant 3 zones :

1 Zone contenant le nom de la classe

2 Zone contenant les attributs de la classe3 Zone contenant les opérations de la classe

Représentation d’une classe en UML

NomClasse

ListeAttributs

ListeOpérations

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Définition d’une classe en UML

En UML, une classe est définie par un cadre rectangulaire comportant 3 zones :

1 Zone contenant le nom de la classe2 Zone contenant les attributs de la classe

3 Zone contenant les opérations de la classe

Représentation d’une classe en UML

NomClasse

ListeAttributs

ListeOpérations

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Définition d’une classe en UML

En UML, une classe est définie par un cadre rectangulaire comportant 3 zones :

1 Zone contenant le nom de la classe2 Zone contenant les attributs de la classe3 Zone contenant les opérations de la classe

Représentation d’une classe en UML

NomClasse

ListeAttributs

ListeOpérations

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Définition d’une classe en UML

En UML, une classe est définie par un cadre rectangulaire comportant 3 zones :

1 Zone contenant le nom de la classe2 Zone contenant les attributs de la classe3 Zone contenant les opérations de la classe

Représentation d’une classe en UML

NomClasse

ListeAttributs

ListeOpérations

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Définition de la Classe en UML

Définition d’une classe en UML

En UML, une classe est définie par un cadre rectangulaire comportant 3 zones :

1 Zone contenant le nom de la classe2 Zone contenant les attributs de la classe3 Zone contenant les opérations de la classe

Représentation d’une classe en UML

NomClasse

ListeAttributs

ListeOpérations

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

1 - ClasseDéfinition de la Classe en UMLLes éléments de la Classe en UML

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les attributs d’une classe UML

Les caractéristiques (propriétés) d’une classe UML sont représentées sous la formed’attributs.Un attribut peut être représenté au moyen de deux notations différentes :

1 en ligne pour des données primitives simples (entiers, réels, ...),2 relation pour exprimer des liens avec d’autres classes (voir la section suivante).

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les attributs d’une classe UML

Les caractéristiques (propriétés) d’une classe UML sont représentées sous la formed’attributs.

Un attribut peut être représenté au moyen de deux notations différentes :1 en ligne pour des données primitives simples (entiers, réels, ...),2 relation pour exprimer des liens avec d’autres classes (voir la section suivante).

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les attributs d’une classe UML

Les caractéristiques (propriétés) d’une classe UML sont représentées sous la formed’attributs.Un attribut peut être représenté au moyen de deux notations différentes :

1 en ligne pour des données primitives simples (entiers, réels, ...),2 relation pour exprimer des liens avec d’autres classes (voir la section suivante).

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les attributs d’une classe UML

Les caractéristiques (propriétés) d’une classe UML sont représentées sous la formed’attributs.Un attribut peut être représenté au moyen de deux notations différentes :

1 en ligne pour des données primitives simples (entiers, réels, ...),

2 relation pour exprimer des liens avec d’autres classes (voir la section suivante).

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les attributs d’une classe UML

Les caractéristiques (propriétés) d’une classe UML sont représentées sous la formed’attributs.Un attribut peut être représenté au moyen de deux notations différentes :

1 en ligne pour des données primitives simples (entiers, réels, ...),2 relation pour exprimer des liens avec d’autres classes (voir la section suivante).

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les attributs en ligne

La forme générale d’un attribut en ligne dans une classe :visibilité / nom : type multiplicité = valeur-initiale {propriétés}

Les attributs dérivés "/"

C’est un attribut qui peut être calculé à partir d’autres attributs de la classe

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les attributs en ligne

La forme générale d’un attribut en ligne dans une classe :

visibilité / nom : type multiplicité = valeur-initiale {propriétés}

Les attributs dérivés "/"

C’est un attribut qui peut être calculé à partir d’autres attributs de la classe

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les attributs en ligne

La forme générale d’un attribut en ligne dans une classe :visibilité / nom : type multiplicité = valeur-initiale {propriétés}

Les attributs dérivés "/"

C’est un attribut qui peut être calculé à partir d’autres attributs de la classe

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les attributs en ligne

La forme générale d’un attribut en ligne dans une classe :visibilité / nom : type multiplicité = valeur-initiale {propriétés}

Les attributs dérivés "/"

C’est un attribut qui peut être calculé à partir d’autres attributs de la classe

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Visibilité (par défaut public)

+(public), –(private), #(protected), ~(package)

Multiplicité (par défaut 1)

[val ] : il y a val fois cet attribut[min..max ] : il y a entre min et max fois cet attribut[min..* ] : il y a au moins min fois cet attribut[* ] : il y a un nombre indéterminé d’occurrence de cet attribut

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Visibilité (par défaut public)

+(public), –(private), #(protected), ~(package)

Multiplicité (par défaut 1)

[val ] : il y a val fois cet attribut[min..max ] : il y a entre min et max fois cet attribut[min..* ] : il y a au moins min fois cet attribut[* ] : il y a un nombre indéterminé d’occurrence de cet attribut

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Visibilité (par défaut public)

+(public), –(private), #(protected), ~(package)

Multiplicité (par défaut 1)

[val ] : il y a val fois cet attribut[min..max ] : il y a entre min et max fois cet attribut[min..* ] : il y a au moins min fois cet attribut[* ] : il y a un nombre indéterminé d’occurrence de cet attribut

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Visibilité (par défaut public)

+(public), –(private), #(protected), ~(package)

Multiplicité (par défaut 1)

[val ] : il y a val fois cet attribut

[min..max ] : il y a entre min et max fois cet attribut[min..* ] : il y a au moins min fois cet attribut[* ] : il y a un nombre indéterminé d’occurrence de cet attribut

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Visibilité (par défaut public)

+(public), –(private), #(protected), ~(package)

Multiplicité (par défaut 1)

[val ] : il y a val fois cet attribut[min..max ] : il y a entre min et max fois cet attribut

[min..* ] : il y a au moins min fois cet attribut[* ] : il y a un nombre indéterminé d’occurrence de cet attribut

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Visibilité (par défaut public)

+(public), –(private), #(protected), ~(package)

Multiplicité (par défaut 1)

[val ] : il y a val fois cet attribut[min..max ] : il y a entre min et max fois cet attribut[min..* ] : il y a au moins min fois cet attribut

[* ] : il y a un nombre indéterminé d’occurrence de cet attribut

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Visibilité (par défaut public)

+(public), –(private), #(protected), ~(package)

Multiplicité (par défaut 1)

[val ] : il y a val fois cet attribut[min..max ] : il y a entre min et max fois cet attribut[min..* ] : il y a au moins min fois cet attribut[* ] : il y a un nombre indéterminé d’occurrence de cet attribut

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Propriétés

readOnly : valeur constantestatic : attribut partagé entre tous les objets (souligné dans le diagramme UML)unique : si multiplicité > 1, valeurs distinctesordered : si multiplicité > 1, valeurs ordonnées

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Propriétés

readOnly : valeur constante

static : attribut partagé entre tous les objets (souligné dans le diagramme UML)unique : si multiplicité > 1, valeurs distinctesordered : si multiplicité > 1, valeurs ordonnées

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Propriétés

readOnly : valeur constantestatic : attribut partagé entre tous les objets (souligné dans le diagramme UML)

unique : si multiplicité > 1, valeurs distinctesordered : si multiplicité > 1, valeurs ordonnées

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Propriétés

readOnly : valeur constantestatic : attribut partagé entre tous les objets (souligné dans le diagramme UML)unique : si multiplicité > 1, valeurs distinctes

ordered : si multiplicité > 1, valeurs ordonnées

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Propriétés

readOnly : valeur constantestatic : attribut partagé entre tous les objets (souligné dans le diagramme UML)unique : si multiplicité > 1, valeurs distinctesordered : si multiplicité > 1, valeurs ordonnées

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Exemple

Etudiant

–id : Integer {unique}+nom : String–dateNaissance : Date–/age : Integer [0..1]–tel : Integer [5] {ordered}–anneeEtude : Integer = 1– nombreEtudiants : Integer–modulesSuivis : String [1..*] {unique,ordered}–notesModulesSuivis : Double [1..*] {ordered}

...

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les opérations d’une classe UML

Une opération permet d’invoquer une fonctionnalité offerte par une classe.La forme générale d’une opération dans une classe :visibilité nom (paramètres) : type-retourné {propriétés}

Un paramètre d’une opération est de la forme :direction nom : type multiplicité = valeur-initiale {propriétés}

les directions sont in (entrée seule sans modification), out (sortie seule) et inout(entrée et sortie).

Remarque

La visibilité et les propriétés ont les mêmes définitions et les mêmes utilisations quedans le cas des attributs.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les opérations d’une classe UML

Une opération permet d’invoquer une fonctionnalité offerte par une classe.

La forme générale d’une opération dans une classe :visibilité nom (paramètres) : type-retourné {propriétés}

Un paramètre d’une opération est de la forme :direction nom : type multiplicité = valeur-initiale {propriétés}

les directions sont in (entrée seule sans modification), out (sortie seule) et inout(entrée et sortie).

Remarque

La visibilité et les propriétés ont les mêmes définitions et les mêmes utilisations quedans le cas des attributs.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les opérations d’une classe UML

Une opération permet d’invoquer une fonctionnalité offerte par une classe.La forme générale d’une opération dans une classe :

visibilité nom (paramètres) : type-retourné {propriétés}Un paramètre d’une opération est de la forme :direction nom : type multiplicité = valeur-initiale {propriétés}

les directions sont in (entrée seule sans modification), out (sortie seule) et inout(entrée et sortie).

Remarque

La visibilité et les propriétés ont les mêmes définitions et les mêmes utilisations quedans le cas des attributs.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les opérations d’une classe UML

Une opération permet d’invoquer une fonctionnalité offerte par une classe.La forme générale d’une opération dans une classe :visibilité nom (paramètres) : type-retourné {propriétés}

Un paramètre d’une opération est de la forme :direction nom : type multiplicité = valeur-initiale {propriétés}

les directions sont in (entrée seule sans modification), out (sortie seule) et inout(entrée et sortie).

Remarque

La visibilité et les propriétés ont les mêmes définitions et les mêmes utilisations quedans le cas des attributs.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les opérations d’une classe UML

Une opération permet d’invoquer une fonctionnalité offerte par une classe.La forme générale d’une opération dans une classe :visibilité nom (paramètres) : type-retourné {propriétés}

Un paramètre d’une opération est de la forme :

direction nom : type multiplicité = valeur-initiale {propriétés}les directions sont in (entrée seule sans modification), out (sortie seule) et inout(entrée et sortie).

Remarque

La visibilité et les propriétés ont les mêmes définitions et les mêmes utilisations quedans le cas des attributs.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les opérations d’une classe UML

Une opération permet d’invoquer une fonctionnalité offerte par une classe.La forme générale d’une opération dans une classe :visibilité nom (paramètres) : type-retourné {propriétés}

Un paramètre d’une opération est de la forme :direction nom : type multiplicité = valeur-initiale {propriétés}

les directions sont in (entrée seule sans modification), out (sortie seule) et inout(entrée et sortie).

Remarque

La visibilité et les propriétés ont les mêmes définitions et les mêmes utilisations quedans le cas des attributs.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les opérations d’une classe UML

Une opération permet d’invoquer une fonctionnalité offerte par une classe.La forme générale d’une opération dans une classe :visibilité nom (paramètres) : type-retourné {propriétés}

Un paramètre d’une opération est de la forme :direction nom : type multiplicité = valeur-initiale {propriétés}

les directions sont in (entrée seule sans modification), out (sortie seule) et inout(entrée et sortie).

Remarque

La visibilité et les propriétés ont les mêmes définitions et les mêmes utilisations quedans le cas des attributs.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Les opérations d’une classe UML

Une opération permet d’invoquer une fonctionnalité offerte par une classe.La forme générale d’une opération dans une classe :visibilité nom (paramètres) : type-retourné {propriétés}

Un paramètre d’une opération est de la forme :direction nom : type multiplicité = valeur-initiale {propriétés}

les directions sont in (entrée seule sans modification), out (sortie seule) et inout(entrée et sortie).

Remarque

La visibilité et les propriétés ont les mêmes définitions et les mêmes utilisations quedans le cas des attributs.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe

Les éléments de la Classe en UML

Exemple

Etudiant

...–modulesSuivis : String [1..*] {unique,ordered}–notesModulesSuivis : Double [1..*] {ordered}

+getAge() : Integer+setName(in newName : String) : void+getMoyenne() : Double

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

2 - AssociationLes relations d’associationLes associations d’agrégationLes classes d’association

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les attributs d’une classe UML

Les caractéristiques (propriétés) d’une classe UML sont représentées sous la formed’attributs.Un attribut peut être représenté au moyen de deux notations différentes :

1 en ligne pour des données primitives simples (entiers, réels, ...),2 relation pour exprimer des liens avec d’autres classes (voir la section suivante).

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

2 - AssociationLes relations d’associationLes associations d’agrégationLes classes d’association

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les relations d’association

Un système est constitué d’un ensemble de classes (d’objets) qui interagissententre elles (des classes avec des relations entre elles).Une relation d’association entre deux classes peut être interprétée par un "... a un...", "... est propriétaire de ..." ou "... est composé de ...".Une relation d’association doit être stable (elle dure dans le temps et elle est nonponctuelle).Il est possible de nommer une relation d’association.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les relations d’association

Un système est constitué d’un ensemble de classes (d’objets) qui interagissententre elles (des classes avec des relations entre elles).

Une relation d’association entre deux classes peut être interprétée par un "... a un...", "... est propriétaire de ..." ou "... est composé de ...".Une relation d’association doit être stable (elle dure dans le temps et elle est nonponctuelle).Il est possible de nommer une relation d’association.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les relations d’association

Un système est constitué d’un ensemble de classes (d’objets) qui interagissententre elles (des classes avec des relations entre elles).Une relation d’association entre deux classes peut être interprétée par un "... a un...", "... est propriétaire de ..." ou "... est composé de ...".

Une relation d’association doit être stable (elle dure dans le temps et elle est nonponctuelle).Il est possible de nommer une relation d’association.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les relations d’association

Un système est constitué d’un ensemble de classes (d’objets) qui interagissententre elles (des classes avec des relations entre elles).Une relation d’association entre deux classes peut être interprétée par un "... a un...", "... est propriétaire de ..." ou "... est composé de ...".Une relation d’association doit être stable (elle dure dans le temps et elle est nonponctuelle).

Il est possible de nommer une relation d’association.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les relations d’association

Un système est constitué d’un ensemble de classes (d’objets) qui interagissententre elles (des classes avec des relations entre elles).Une relation d’association entre deux classes peut être interprétée par un "... a un...", "... est propriétaire de ..." ou "... est composé de ...".Une relation d’association doit être stable (elle dure dans le temps et elle est nonponctuelle).Il est possible de nommer une relation d’association.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Exemple d’une relation d’association

enseignerProfesseur Module

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

La navigabilité dans une association

Une association est par défaut bidirectionnelleUne association peut être orientée (sens de navigation)

Exemple

sa capitalePays Ville

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

La navigabilité dans une association

Une association est par défaut bidirectionnelle

Une association peut être orientée (sens de navigation)

Exemple

sa capitalePays Ville

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

La navigabilité dans une association

Une association est par défaut bidirectionnelleUne association peut être orientée (sens de navigation)

Exemple

sa capitalePays Ville

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

La navigabilité dans une association

Une association est par défaut bidirectionnelleUne association peut être orientée (sens de navigation)

Exemple

sa capitalePays Ville

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les rôles dans une association

En plus du nom, nous pouvons définir le rôle que joue chaque classe dans uneassociation

nom de l’extrémité d’une association

Exemple

est enseigné par enseigneProfesseur Module

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les rôles dans une association

En plus du nom, nous pouvons définir le rôle que joue chaque classe dans uneassociation

nom de l’extrémité d’une association

Exemple

est enseigné par enseigneProfesseur Module

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les rôles dans une association

En plus du nom, nous pouvons définir le rôle que joue chaque classe dans uneassociation

nom de l’extrémité d’une association

Exemple

est enseigné par enseigneProfesseur Module

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les rôles dans une association

En plus du nom, nous pouvons définir le rôle que joue chaque classe dans uneassociation

nom de l’extrémité d’une association

Exemple

est enseigné par enseigneProfesseur Module

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Exemples

sa capitalePays Ville

est responsable de

est sous la responsabilité de

Employé

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Exemples

sa capitalePays Ville

est responsable de

est sous la responsabilité de

Employé

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Multiplicité dans une association

spécifie, dans une association, le nombre d’instance d’une classe qui sont liées àune instance d’une autre classe

1, 0..1, M..N, *, 0..*, 1..*

Exemple

est enseigné par

1..*

enseigne

1..*

Professeur Module

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Multiplicité dans une association

spécifie, dans une association, le nombre d’instance d’une classe qui sont liées àune instance d’une autre classe

1, 0..1, M..N, *, 0..*, 1..*

Exemple

est enseigné par

1..*

enseigne

1..*

Professeur Module

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Multiplicité dans une association

spécifie, dans une association, le nombre d’instance d’une classe qui sont liées àune instance d’une autre classe

1, 0..1, M..N, *, 0..*, 1..*

Exemple

est enseigné par

1..*

enseigne

1..*

Professeur Module

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Multiplicité dans une association

spécifie, dans une association, le nombre d’instance d’une classe qui sont liées àune instance d’une autre classe

1, 0..1, M..N, *, 0..*, 1..*

Exemple

est enseigné par

1..*

enseigne

1..*

Professeur Module

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Exemples

0..1

sa capitale

1

Pays Ville

est responsable de0..*

est sous la responsabilité de

0..1

Employé

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Exemples

0..1

sa capitale

1

Pays Ville

est responsable de0..*

est sous la responsabilité de

0..1

Employé

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les associations n-aires

C’est une association qui relie plus de deux classes

prof

1..* matière1..*

étudiant1..*

Professeur Matière

Étudiant

Cours

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les associations n-aires

C’est une association qui relie plus de deux classes

prof

1..* matière1..*

étudiant1..*

Professeur Matière

Étudiant

Cours

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les relations d’association

Les associations n-aires

C’est une association qui relie plus de deux classes

prof

1..* matière1..*

étudiant1..*

Professeur Matière

Étudiant

Cours

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

2 - AssociationLes relations d’associationLes associations d’agrégationLes classes d’association

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Les associations d’agrégation

Une association d’agrégation est une relation entre classes qui est plus fortequ’une relation d’association classique.Une association d’agrégation peut être traduite par le verbe "posséder"Une association d’agrégation correspond généralement à une relation tout ouparties (composé/composant)

Il y a agrégation si le composé dépend de l’existence de ses composants pour avoirun sens.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Les associations d’agrégation

Une association d’agrégation est une relation entre classes qui est plus fortequ’une relation d’association classique.

Une association d’agrégation peut être traduite par le verbe "posséder"Une association d’agrégation correspond généralement à une relation tout ouparties (composé/composant)

Il y a agrégation si le composé dépend de l’existence de ses composants pour avoirun sens.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Les associations d’agrégation

Une association d’agrégation est une relation entre classes qui est plus fortequ’une relation d’association classique.Une association d’agrégation peut être traduite par le verbe "posséder"

Une association d’agrégation correspond généralement à une relation tout ouparties (composé/composant)

Il y a agrégation si le composé dépend de l’existence de ses composants pour avoirun sens.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Les associations d’agrégation

Une association d’agrégation est une relation entre classes qui est plus fortequ’une relation d’association classique.Une association d’agrégation peut être traduite par le verbe "posséder"Une association d’agrégation correspond généralement à une relation tout ouparties (composé/composant)

Il y a agrégation si le composé dépend de l’existence de ses composants pour avoirun sens.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Les associations d’agrégation

Une association d’agrégation est une relation entre classes qui est plus fortequ’une relation d’association classique.Une association d’agrégation peut être traduite par le verbe "posséder"Une association d’agrégation correspond généralement à une relation tout ouparties (composé/composant)

Il y a agrégation si le composé dépend de l’existence de ses composants pour avoirun sens.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Exemple d’une association d’agrégation

les iténiraires0..*

passe par

2..*

Itinéraire Gare

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Les associations de composition

L’association de composition est une association d’agrégation avec un lien plus fortL’association de composition peut être traduite par le verbe "composer de"

Si on détruit une instance du composé, on détruit tous ses composants

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Les associations de composition

L’association de composition est une association d’agrégation avec un lien plus fort

L’association de composition peut être traduite par le verbe "composer de"Si on détruit une instance du composé, on détruit tous ses composants

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Les associations de composition

L’association de composition est une association d’agrégation avec un lien plus fortL’association de composition peut être traduite par le verbe "composer de"

Si on détruit une instance du composé, on détruit tous ses composants

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Les associations de composition

L’association de composition est une association d’agrégation avec un lien plus fortL’association de composition peut être traduite par le verbe "composer de"

Si on détruit une instance du composé, on détruit tous ses composants

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les associations d’agrégation

Exemple d’une association de composition

son programme

1

son comportement

0..*

Programme Instruction

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les classes d’association

2 - AssociationLes relations d’associationLes associations d’agrégationLes classes d’association

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les classes d’association

Classe d’association

C’est une association possédant un nom, des attributs et des méthodes

étudiants inscrits1..*

modules suivis1..*

Étudiant Module

Évaluation

-note : Integer

+validate() : boolean

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les classes d’association

Classe d’association

C’est une association possédant un nom, des attributs et des méthodes

étudiants inscrits1..*

modules suivis1..*

Étudiant Module

Évaluation

-note : Integer

+validate() : boolean

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Association

Les classes d’association

Classe d’association

C’est une association possédant un nom, des attributs et des méthodes

étudiants inscrits1..*

modules suivis1..*

Étudiant Module

Évaluation

-note : Integer

+validate() : boolean

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Généralisation/ Spécialisation

3 - Généralisation/ SpécialisationDéfinitions

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Généralisation/ Spécialisation

Définitions

3 - Généralisation/ SpécialisationDéfinitions

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Généralisation/ Spécialisation

Définitions

Définitions

Une relation de généralisation permet d’indiquer qu’une classe constitue un casplus général d’une autre classe.Une relation de généralisation est utilisée pour extraire des propriétés/opérationscommunes à plusieurs classes afin de les regrouper dans une super-classe.A l’inverse, une relation de spécialisation permet de décrire les spécificités d’un casparticulier d’une classe dans une sous-classe (relation "... est un ...").

Remarque

Une sous classe possède, en plus de ses propres propriétés/opérations, lespropriétés/opérations de ses super-classes.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Généralisation/ Spécialisation

Définitions

Définitions

Une relation de généralisation permet d’indiquer qu’une classe constitue un casplus général d’une autre classe.

Une relation de généralisation est utilisée pour extraire des propriétés/opérationscommunes à plusieurs classes afin de les regrouper dans une super-classe.A l’inverse, une relation de spécialisation permet de décrire les spécificités d’un casparticulier d’une classe dans une sous-classe (relation "... est un ...").

Remarque

Une sous classe possède, en plus de ses propres propriétés/opérations, lespropriétés/opérations de ses super-classes.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Généralisation/ Spécialisation

Définitions

Définitions

Une relation de généralisation permet d’indiquer qu’une classe constitue un casplus général d’une autre classe.Une relation de généralisation est utilisée pour extraire des propriétés/opérationscommunes à plusieurs classes afin de les regrouper dans une super-classe.

A l’inverse, une relation de spécialisation permet de décrire les spécificités d’un casparticulier d’une classe dans une sous-classe (relation "... est un ...").

Remarque

Une sous classe possède, en plus de ses propres propriétés/opérations, lespropriétés/opérations de ses super-classes.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Généralisation/ Spécialisation

Définitions

Définitions

Une relation de généralisation permet d’indiquer qu’une classe constitue un casplus général d’une autre classe.Une relation de généralisation est utilisée pour extraire des propriétés/opérationscommunes à plusieurs classes afin de les regrouper dans une super-classe.A l’inverse, une relation de spécialisation permet de décrire les spécificités d’un casparticulier d’une classe dans une sous-classe (relation "... est un ...").

Remarque

Une sous classe possède, en plus de ses propres propriétés/opérations, lespropriétés/opérations de ses super-classes.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Généralisation/ Spécialisation

Définitions

Définitions

Une relation de généralisation permet d’indiquer qu’une classe constitue un casplus général d’une autre classe.Une relation de généralisation est utilisée pour extraire des propriétés/opérationscommunes à plusieurs classes afin de les regrouper dans une super-classe.A l’inverse, une relation de spécialisation permet de décrire les spécificités d’un casparticulier d’une classe dans une sous-classe (relation "... est un ...").

Remarque

Une sous classe possède, en plus de ses propres propriétés/opérations, lespropriétés/opérations de ses super-classes.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Généralisation/ Spécialisation

Définitions

Exemple

Etudiant Enseignant

Personne

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Généralisation/ Spécialisation

Définitions

Exemple

Personne

Etudiant Salarié

Apprenti Professeur

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

4 - Classe abstraite et InterfaceClasse abstraiteInterfaces

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

4 - Classe abstraite et InterfaceClasse abstraiteInterfaces

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

Définition d’une classe abstraite

Une classe abstraite permet de regrouper des propriétés et des fonctionnalitéscommunes à différents types d’objets.

Une classe abstraite est une classe qui ne peut pas être instanciée

Une classe abstraite peut être une classe dont toutes les méthodes n’ont pas étéimplémentées.

Une classe possédant une méthode abstraite doit être déclarée comme une classeabstraite

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

Définition d’une classe abstraite

Une classe abstraite permet de regrouper des propriétés et des fonctionnalitéscommunes à différents types d’objets.

Une classe abstraite est une classe qui ne peut pas être instanciée

Une classe abstraite peut être une classe dont toutes les méthodes n’ont pas étéimplémentées.

Une classe possédant une méthode abstraite doit être déclarée comme une classeabstraite

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

Définition d’une classe abstraite

Une classe abstraite permet de regrouper des propriétés et des fonctionnalitéscommunes à différents types d’objets.

Une classe abstraite est une classe qui ne peut pas être instanciée

Une classe abstraite peut être une classe dont toutes les méthodes n’ont pas étéimplémentées.

Une classe possédant une méthode abstraite doit être déclarée comme une classeabstraite

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

Définition d’une classe abstraite

Une classe abstraite permet de regrouper des propriétés et des fonctionnalitéscommunes à différents types d’objets.

Une classe abstraite est une classe qui ne peut pas être instanciée

Une classe abstraite peut être une classe dont toutes les méthodes n’ont pas étéimplémentées.

Une classe possédant une méthode abstraite doit être déclarée comme une classeabstraite

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

Définition d’une classe abstraite

Une classe abstraite permet de regrouper des propriétés et des fonctionnalitéscommunes à différents types d’objets.

Une classe abstraite est une classe qui ne peut pas être instanciée

Une classe abstraite peut être une classe dont toutes les méthodes n’ont pas étéimplémentées.

Une classe possédant une méthode abstraite doit être déclarée comme une classeabstraite

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

L’héritage d’une classe abstraite

Une classe qui hérite d’une classe abstraite peut implémenter les méthodesabstraites de la classe mère (sauf si la classe fille est également une classeabstraite).Une classe qui hérite d’une classe abstraite peut ré-implémenter les méthodes déjàimplémentées.

Remarque

En UML, la classe/méthode abstraite est notée en italique

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

L’héritage d’une classe abstraite

Une classe qui hérite d’une classe abstraite peut implémenter les méthodesabstraites de la classe mère (sauf si la classe fille est également une classeabstraite).

Une classe qui hérite d’une classe abstraite peut ré-implémenter les méthodes déjàimplémentées.

Remarque

En UML, la classe/méthode abstraite est notée en italique

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

L’héritage d’une classe abstraite

Une classe qui hérite d’une classe abstraite peut implémenter les méthodesabstraites de la classe mère (sauf si la classe fille est également une classeabstraite).Une classe qui hérite d’une classe abstraite peut ré-implémenter les méthodes déjàimplémentées.

Remarque

En UML, la classe/méthode abstraite est notée en italique

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

L’héritage d’une classe abstraite

Une classe qui hérite d’une classe abstraite peut implémenter les méthodesabstraites de la classe mère (sauf si la classe fille est également une classeabstraite).Une classe qui hérite d’une classe abstraite peut ré-implémenter les méthodes déjàimplémentées.

Remarque

En UML, la classe/méthode abstraite est notée en italique

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Classe abstraite

Exemple

Animal

marcher()manger()

Herbivore

marcher()manger()

Carnivore

marcher()manger()

Cheval

marcher()

Gazelle

marcher()

Lion

marcher()

Tigre

marcher()

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

4 - Classe abstraite et InterfaceClasse abstraiteInterfaces

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Définition d’une interface

Une interface est un classificateur contenant des déclarations de propriétés et deméthodes abstraites assurant un service cohérent.

Une interface est comme une classe abstraite dans laquelle aucune méthode neserait implémentée (donc ne peut pas être instanciée).Une interface permet de définir un ensemble de services sans se préoccuper de leursimplémentations (méthodes abstraites).

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Définition d’une interface

Une interface est un classificateur contenant des déclarations de propriétés et deméthodes abstraites assurant un service cohérent.

Une interface est comme une classe abstraite dans laquelle aucune méthode neserait implémentée (donc ne peut pas être instanciée).Une interface permet de définir un ensemble de services sans se préoccuper de leursimplémentations (méthodes abstraites).

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Définition d’une interface

Une interface est un classificateur contenant des déclarations de propriétés et deméthodes abstraites assurant un service cohérent.

Une interface est comme une classe abstraite dans laquelle aucune méthode neserait implémentée (donc ne peut pas être instanciée).

Une interface permet de définir un ensemble de services sans se préoccuper de leursimplémentations (méthodes abstraites).

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Définition d’une interface

Une interface est un classificateur contenant des déclarations de propriétés et deméthodes abstraites assurant un service cohérent.

Une interface est comme une classe abstraite dans laquelle aucune méthode neserait implémentée (donc ne peut pas être instanciée).Une interface permet de définir un ensemble de services sans se préoccuper de leursimplémentations (méthodes abstraites).

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Implémentation d’une interface

Une interface représente un contrat que doit respecter chaque classe quiimplémente cette interface.

Une classe implémentant une interface doit obligatoirement implémenter toutes lesméthodes déclarées dans l’interface, à moins qu’elle ne soit elle-même déclaréeabstraite !

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Implémentation d’une interface

Une interface représente un contrat que doit respecter chaque classe quiimplémente cette interface.

Une classe implémentant une interface doit obligatoirement implémenter toutes lesméthodes déclarées dans l’interface, à moins qu’elle ne soit elle-même déclaréeabstraite !

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Implémentation d’une interface

Une interface représente un contrat que doit respecter chaque classe quiimplémente cette interface.

Une classe implémentant une interface doit obligatoirement implémenter toutes lesméthodes déclarées dans l’interface, à moins qu’elle ne soit elle-même déclaréeabstraite !

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Exemple

�interface�ObjetPersistant

-OID : Integer

+save() : Boolean+delete() : Boolean+retrieve() : Boolean

Personne

-Nom : String-Prenom : String

+setNom(String n) : void+setPrenom(String p) : void

Etudiant

-NumEtud : Integer

+save() : Boolean+delete() : Boolean+retrieve() : Boolean

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Conclusion : Classe Abstraite vs Interface

La notion d’interface est utilisée pour représenter des propriétés transverses declasses.Là où une classe abstraite doit être étendue et spécialisée, une interface nous ditjuste que telle classe possède telle propriété et assure tel service, indépendammentde ce qu’elle représente.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Conclusion : Classe Abstraite vs Interface

La notion d’interface est utilisée pour représenter des propriétés transverses declasses.

Là où une classe abstraite doit être étendue et spécialisée, une interface nous ditjuste que telle classe possède telle propriété et assure tel service, indépendammentde ce qu’elle représente.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

Classe abstraite et Interface

Interfaces

Conclusion : Classe Abstraite vs Interface

La notion d’interface est utilisée pour représenter des propriétés transverses declasses.Là où une classe abstraite doit être étendue et spécialisée, une interface nous ditjuste que telle classe possède telle propriété et assure tel service, indépendammentde ce qu’elle représente.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

5 - UML vers JavaLes classesLes relationsLes collectionsExemple

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les classes

5 - UML vers JavaLes classesLes relationsLes collectionsExemple

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les classes

Transcription des classes

A chaque classe UML, correspondra une classe Java.A chaque attribut d’une classe UML, correspondra un attribut d’une classe Java.

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

A chaque opération d’une classe UML, correspondra une méthode d’une classeJava.A chaque classe UML abstraite, correspondra une classe Java abstraite.

Remarque

Les visibilités des attributs et des opérations d’une classe UML seront les mêmes dansla classe Java obtenue.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les classes

Transcription des classes

A chaque classe UML, correspondra une classe Java.

A chaque attribut d’une classe UML, correspondra un attribut d’une classe Java.cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

A chaque opération d’une classe UML, correspondra une méthode d’une classeJava.A chaque classe UML abstraite, correspondra une classe Java abstraite.

Remarque

Les visibilités des attributs et des opérations d’une classe UML seront les mêmes dansla classe Java obtenue.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les classes

Transcription des classes

A chaque classe UML, correspondra une classe Java.A chaque attribut d’une classe UML, correspondra un attribut d’une classe Java.

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

A chaque opération d’une classe UML, correspondra une méthode d’une classeJava.A chaque classe UML abstraite, correspondra une classe Java abstraite.

Remarque

Les visibilités des attributs et des opérations d’une classe UML seront les mêmes dansla classe Java obtenue.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les classes

Transcription des classes

A chaque classe UML, correspondra une classe Java.A chaque attribut d’une classe UML, correspondra un attribut d’une classe Java.

cardinalité ≤ 1 : TypeAttribut nomAttribut ;

cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

A chaque opération d’une classe UML, correspondra une méthode d’une classeJava.A chaque classe UML abstraite, correspondra une classe Java abstraite.

Remarque

Les visibilités des attributs et des opérations d’une classe UML seront les mêmes dansla classe Java obtenue.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les classes

Transcription des classes

A chaque classe UML, correspondra une classe Java.A chaque attribut d’une classe UML, correspondra un attribut d’une classe Java.

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

A chaque opération d’une classe UML, correspondra une méthode d’une classeJava.A chaque classe UML abstraite, correspondra une classe Java abstraite.

Remarque

Les visibilités des attributs et des opérations d’une classe UML seront les mêmes dansla classe Java obtenue.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les classes

Transcription des classes

A chaque classe UML, correspondra une classe Java.A chaque attribut d’une classe UML, correspondra un attribut d’une classe Java.

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

A chaque opération d’une classe UML, correspondra une méthode d’une classeJava.

A chaque classe UML abstraite, correspondra une classe Java abstraite.

Remarque

Les visibilités des attributs et des opérations d’une classe UML seront les mêmes dansla classe Java obtenue.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les classes

Transcription des classes

A chaque classe UML, correspondra une classe Java.A chaque attribut d’une classe UML, correspondra un attribut d’une classe Java.

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

A chaque opération d’une classe UML, correspondra une méthode d’une classeJava.A chaque classe UML abstraite, correspondra une classe Java abstraite.

Remarque

Les visibilités des attributs et des opérations d’une classe UML seront les mêmes dansla classe Java obtenue.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les classes

Transcription des classes

A chaque classe UML, correspondra une classe Java.A chaque attribut d’une classe UML, correspondra un attribut d’une classe Java.

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

A chaque opération d’une classe UML, correspondra une méthode d’une classeJava.A chaque classe UML abstraite, correspondra une classe Java abstraite.

Remarque

Les visibilités des attributs et des opérations d’une classe UML seront les mêmes dansla classe Java obtenue.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les relations

5 - UML vers JavaLes classesLes relationsLes collectionsExemple

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les relations

Transcription des associations

A chaque association UML, correspondra un attribut dans les classesJava participantes à l’associationUn attribut est ajouté uniquement si l’association est navigableLe nom de l’attribut est le nom de l’extrémité navigable

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

La relation de généralisation en UML est traduite par une relation d’héritage enJava.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les relations

Transcription des associations

A chaque association UML, correspondra un attribut dans les classesJava participantes à l’association

Un attribut est ajouté uniquement si l’association est navigableLe nom de l’attribut est le nom de l’extrémité navigable

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

La relation de généralisation en UML est traduite par une relation d’héritage enJava.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les relations

Transcription des associations

A chaque association UML, correspondra un attribut dans les classesJava participantes à l’associationUn attribut est ajouté uniquement si l’association est navigable

Le nom de l’attribut est le nom de l’extrémité navigable

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

La relation de généralisation en UML est traduite par une relation d’héritage enJava.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les relations

Transcription des associations

A chaque association UML, correspondra un attribut dans les classesJava participantes à l’associationUn attribut est ajouté uniquement si l’association est navigableLe nom de l’attribut est le nom de l’extrémité navigable

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

La relation de généralisation en UML est traduite par une relation d’héritage enJava.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les relations

Transcription des associations

A chaque association UML, correspondra un attribut dans les classesJava participantes à l’associationUn attribut est ajouté uniquement si l’association est navigableLe nom de l’attribut est le nom de l’extrémité navigable

cardinalité ≤ 1 : TypeAttribut nomAttribut ;

cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

La relation de généralisation en UML est traduite par une relation d’héritage enJava.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les relations

Transcription des associations

A chaque association UML, correspondra un attribut dans les classesJava participantes à l’associationUn attribut est ajouté uniquement si l’association est navigableLe nom de l’attribut est le nom de l’extrémité navigable

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

La relation de généralisation en UML est traduite par une relation d’héritage enJava.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les relations

Transcription des associations

A chaque association UML, correspondra un attribut dans les classesJava participantes à l’associationUn attribut est ajouté uniquement si l’association est navigableLe nom de l’attribut est le nom de l’extrémité navigable

cardinalité ≤ 1 : TypeAttribut nomAttribut ;cardinalité > 1 : Collection<TypeAttribut> nomAttribut ;

La relation de généralisation en UML est traduite par une relation d’héritage enJava.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les collections

5 - UML vers JavaLes classesLes relationsLes collectionsExemple

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les collections

Les collections en Java

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les collections

Les attributs de type Collection

Le type de la Collection affecté à un attribut d’une classe Java, dépend despropriétés de l’attribut/association déclarées en UML.

aucune propriété :traduit en Collection (à configurer par l’outil).

possède la propriété ordered :traduit en List.

possède la propriété unique :traduit en Set.

possède les propriétés ordered et unique :traduit en SortedSet.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les collections

Les attributs de type Collection

Le type de la Collection affecté à un attribut d’une classe Java, dépend despropriétés de l’attribut/association déclarées en UML.

aucune propriété :traduit en Collection (à configurer par l’outil).

possède la propriété ordered :traduit en List.

possède la propriété unique :traduit en Set.

possède les propriétés ordered et unique :traduit en SortedSet.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les collections

Les attributs de type Collection

Le type de la Collection affecté à un attribut d’une classe Java, dépend despropriétés de l’attribut/association déclarées en UML.

aucune propriété :traduit en Collection (à configurer par l’outil).

possède la propriété ordered :traduit en List.

possède la propriété unique :traduit en Set.

possède les propriétés ordered et unique :traduit en SortedSet.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les collections

Les attributs de type Collection

Le type de la Collection affecté à un attribut d’une classe Java, dépend despropriétés de l’attribut/association déclarées en UML.

aucune propriété :traduit en Collection (à configurer par l’outil).

possède la propriété ordered :traduit en List.

possède la propriété unique :traduit en Set.

possède les propriétés ordered et unique :traduit en SortedSet.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les collections

Les attributs de type Collection

Le type de la Collection affecté à un attribut d’une classe Java, dépend despropriétés de l’attribut/association déclarées en UML.

aucune propriété :traduit en Collection (à configurer par l’outil).

possède la propriété ordered :traduit en List.

possède la propriété unique :traduit en Set.

possède les propriétés ordered et unique :traduit en SortedSet.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Les collections

Les attributs de type Collection

Le type de la Collection affecté à un attribut d’une classe Java, dépend despropriétés de l’attribut/association déclarées en UML.

aucune propriété :traduit en Collection (à configurer par l’outil).

possède la propriété ordered :traduit en List.

possède la propriété unique :traduit en Set.

possède les propriétés ordered et unique :traduit en SortedSet.

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Exemple

5 - UML vers JavaLes classesLes relationsLes collectionsExemple

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Exemple

Exemple

vertex*center

1

Shape

+ perimeter() : Double

Circle

-radius Double

+ perimeter() : Double

Polygon

+ perimeter() : Double

Point

-x : Double-y : Double

+distanceTo(p : Point) : Double

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Exemple

Exemple

pub l i c c l a s s Po in t {p r i v a t e double x ;p r i v a t e double y ;

pub l i c double d i s t anceTo ( Po in t au t r e ){re tu rn 0 . 0 ;

}}

pub l i c abs t rac t c l a s s Shape{pub l i c abs t rac t double p e r ime t e r ( ) ;

}

Diagramme de Classes UML Idir AIT SADOUNE<idir.aitsadoune@centralesupelec.fr>

UML vers Java

Exemple

Exemple (suite)

pub l i c c l a s s C i r c l e extends Shape{p r i v a t e Po in t c e n t e r ;p r i v a t e double r a d i u s ;

pub l i c double p e r ime t e r ( ){re tu rn 0 . 0 ;

}}

pub l i c abs t rac t c l a s s Polygon extends Shape {p r i v a t e Co l l e c t i o n <Point> v e r t e x ;

pub l i c double p e r ime t e r ( ){re tu rn 0 . 0 ;

}}