Diagramme de classes UML - Idir AIT SADOUNE
Transcription
Diagramme de classes UML - Idir AIT SADOUNE
Diagramme de classes UML Génie Logiciel 4 - Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation Idir AIT SADOUNE Classe abstraite UML vers Java CentraleSupélec - Département Informatique 3, rue Joliot-Curie, 91192 Gif-sur-Yvette cedex <http://idir.aitsadoune.free.fr> <[email protected]> Année scolaire 2015-2016, Séquence 4 1/34 La vue statique 2/34 Diagramme de classes UML I. Ait Sadoune Classe I La vue statique d’UML permet de décrire la structure du système I I I classes avec attributs (état), opérations (comportement) relations entre classes objets et liens (un état particulier) Association Généralisation/ Spécialisation Classe abstraite UML vers Java La vue statique 2/34 Diagramme de classes UML I. Ait Sadoune Classe I La vue statique d’UML permet de décrire la structure du système I I I I classes avec attributs (état), opérations (comportement) relations entre classes objets et liens (un état particulier) Les moyens disponibles dans UML pour la vue statique Association Généralisation/ Spécialisation Classe abstraite UML vers Java La vue statique 2/34 Diagramme de classes UML I. Ait Sadoune Classe I La vue statique d’UML permet de décrire la structure du système I I I I classes avec attributs (état), opérations (comportement) relations entre classes objets et liens (un état particulier) Les moyens disponibles dans UML pour la vue statique I Diagramme de classe : décrit une abstraction du système à l’aide de classes et des relations (description conceptuelle) Association Généralisation/ Spécialisation Classe abstraite UML vers Java La vue statique 2/34 Diagramme de classes UML I. Ait Sadoune Classe I La vue statique d’UML permet de décrire la structure du système I I I I classes avec attributs (état), opérations (comportement) relations entre classes objets et liens (un état particulier) Les moyens disponibles dans UML pour la vue statique I I Diagramme de classe : décrit une abstraction du système à l’aide de classes et des relations (description conceptuelle) Diagramme d’objet : décrit l’état du système à un moment donné avec des objets et des liens (une instance du diagramme de classe) Association Généralisation/ Spécialisation Classe abstraite UML vers Java La vue statique 2/34 Diagramme de classes UML I. Ait Sadoune Classe I La vue statique d’UML permet de décrire la structure du système I I I I classes avec attributs (état), opérations (comportement) relations entre classes objets et liens (un état particulier) Les moyens disponibles dans UML pour la vue statique I I I Diagramme de classe : décrit une abstraction du système à l’aide de classes et des relations (description conceptuelle) Diagramme d’objet : décrit l’état du système à un moment donné avec des objets et des liens (une instance du diagramme de classe) et les diagrammes de structure composite, de paquetage, de composant et de déploiement... Association Généralisation/ Spécialisation Classe abstraite UML vers Java Plan Diagramme de classes UML I. Ait Sadoune Classe Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java 3/34 Association Généralisation/ Spécialisation Classe abstraite UML vers Java Plan Diagramme de classes UML I. Ait Sadoune Classe Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java 4/34 Association Généralisation/ Spécialisation Classe abstraite UML vers Java Classe en UML Diagramme de classes UML I. Ait Sadoune Classe Classe et Objet : définition I La classe est le moule (type) permettant de créer des objets (instances) appartenant à cette classe. Association Généralisation/ Spécialisation Classe abstraite UML vers Java 5/34 Classe en UML Diagramme de classes UML I. Ait Sadoune Classe Classe et Objet : définition I Association La classe est le moule (type) permettant de créer des objets (instances) appartenant à cette classe. Généralisation/ Spécialisation Classe abstraite UML vers Java Classe en UML NomClass attributs opérations 5/34 Attributs 6/34 Diagramme de classes UML I. Ait Sadoune I La forme générale d’un attribut d’une classe : [visibilité] nom [ : type] [multiplicité] [= valeur-initiale] [propriétés] Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Attributs 6/34 Diagramme de classes UML I. Ait Sadoune I I La forme générale d’un attribut d’une classe : [visibilité] nom [ : type] [multiplicité] [= valeur-initiale] [propriétés] visibilité (par défaut public) : I +(public), -(private), #(protected), ~(package) Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Attributs 6/34 Diagramme de classes UML I. Ait Sadoune I I La forme générale d’un attribut d’une classe : [visibilité] nom [ : type] [multiplicité] [= valeur-initiale] [propriétés] visibilité (par défaut public) : I I +(public), -(private), #(protected), ~(package) multiplicité (par défaut 1) : I I I [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 Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Attributs Diagramme de classes UML I. Ait Sadoune I I La forme générale d’un attribut d’une classe : [visibilité] nom [ : type] [multiplicité] [= valeur-initiale] [propriétés] visibilité (par défaut public) : I I multiplicité (par défaut 1) : I I I I [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 propriétés I I I I 6/34 +(public), -(private), #(protected), ~(package) readOnly : valeur constante pour l’objet static : attribut commun à tous les objets unique : si multiplicité > 1, valeurs distinctes ordered : si multiplicité > 1, valeurs ordonnées Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Attributs Diagramme de classes UML I. Ait Sadoune Classe Association Exemple Généralisation/ Spécialisation Individu -id : Integer {unique} nom : String -date_naissance +age : Integer [0..1] +tel : Integer [0..*] {ordered} statut : String = “étudiant” 7/34 Classe abstraite UML vers Java Opérations 8/34 Diagramme de classes UML I. Ait Sadoune I La forme générale d’une opération dans une classe : [visibilité] nom [(liste-paramètres)] [ : type-retour] [propriétés] Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Opérations 8/34 Diagramme de classes UML I. Ait Sadoune I I La forme générale d’une opération dans une classe : [visibilité] nom [(liste-paramètres)] [ : type-retour] [propriétés] visibilité (par défaut public) : I +(public), -(private), #(protected), ~(package) Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Opérations 8/34 Diagramme de classes UML I. Ait Sadoune I I La forme générale d’une opération dans une classe : [visibilité] nom [(liste-paramètres)] [ : type-retour] [propriétés] visibilité (par défaut public) : I I +(public), -(private), #(protected), ~(package) La liste des paramètres est de la forme : [direction] nom : type [= valeur-par-défaut] I Les directions sont in, out et inout (entrée seule sans modification, sortie seule, entrée et sortie). Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Opérations Diagramme de classes UML I. Ait Sadoune I I La forme générale d’une opération dans une classe : [visibilité] nom [(liste-paramètres)] [ : type-retour] [propriétés] visibilité (par défaut public) : I I La liste des paramètres est de la forme : [direction] nom : type [= valeur-par-défaut] I I Les directions sont in, out et inout (entrée seule sans modification, sortie seule, entrée et sortie). propriétés I I I I 8/34 +(public), -(private), #(protected), ~(package) readOnly : valeur constante pour l’objet static : attribut commun à tous les objets unique : si multiplicité > 1, valeurs distinctes ordered : si multiplicité > 1, valeurs ordonnées Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Opérations Diagramme de classes UML I. Ait Sadoune Classe Exemple Association Individu Généralisation/ Spécialisation Classe abstraite -id : Integer {unique} nom : String -date_naissance +age : Integer [0..1] +tel : Integer [0..*] {ordered} statut : String = “étudiant” +getAge() : Integer +setAge(in newAge : Integer) : void 9/34 UML vers Java Plan Diagramme de classes UML I. Ait Sadoune Classe Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java 10/34 Association Généralisation/ Spécialisation Classe abstraite UML vers Java Les relations d’association Diagramme de classes UML I. Ait Sadoune Classe I Un système est constitué d’un ensemble de classes qui interagissent entre elles (en relation). Association Généralisation/ Spécialisation Classe abstraite UML vers Java 11/34 Les relations d’association Diagramme de classes UML I. Ait Sadoune Classe I I 11/34 Un système est constitué d’un ensemble de classes qui interagissent entre elles (en relation). Association Une relation d’association entre deux classes doit être stable (elle dure dans le temps et elle est non ponctuelle). Classe abstraite Généralisation/ Spécialisation UML vers Java Les relations d’association Diagramme de classes UML I. Ait Sadoune Classe I I I 11/34 Un système est constitué d’un ensemble de classes qui interagissent entre elles (en relation). Association Une relation d’association entre deux classes doit être stable (elle dure dans le temps et elle est non ponctuelle). Classe abstraite Il est possible de nommer une relation d’association. Généralisation/ Spécialisation UML vers Java Les relations d’association Diagramme de classes UML I. Ait Sadoune Classe I I I Un système est constitué d’un ensemble de classes qui interagissent entre elles (en relation). Association Une relation d’association entre deux classes doit être stable (elle dure dans le temps et elle est non ponctuelle). Classe abstraite Il est possible de nommer une relation d’association. Exemple Professeur 11/34 enseigne Module Généralisation/ Spécialisation UML vers Java Les relations d’association Diagramme de classes UML I. Ait Sadoune Classe Association I Une association est par défaut bidirectionnelle Généralisation/ Spécialisation Classe abstraite UML vers Java 12/34 Les relations d’association Diagramme de classes UML I. Ait Sadoune Classe Association I Une association est par défaut bidirectionnelle I Une association peut être orientée (sens de navigation) Généralisation/ Spécialisation Classe abstraite UML vers Java 12/34 Les relations d’association Diagramme de classes UML I. Ait Sadoune Classe Association I Une association est par défaut bidirectionnelle I Une association peut être orientée (sens de navigation) Généralisation/ Spécialisation Classe abstraite UML vers Java Exemple Pays 12/34 est la capitale Ville Le rôle dans une association 13/34 Diagramme de classes UML I. Ait Sadoune I En plus du nom, nous pouvons définir le rôle que joue chaque classe dans l’association I I nom de l’extrémité d’une association indispensable pour les associations réflexives Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Le rôle dans une association Diagramme de classes UML I. Ait Sadoune I En plus du nom, nous pouvons définir le rôle que joue chaque classe dans l’association I I Association nom de l’extrémité d’une association indispensable pour les associations réflexives Généralisation/ Spécialisation Exemple 13/34 Classe Classe abstraite UML vers Java Professeur enseigne est enseigné par Module Le rôle dans une association Diagramme de classes UML I. Ait Sadoune I En plus du nom, nous pouvons définir le rôle que joue chaque classe dans l’association I I Classe Association nom de l’extrémité d’une association indispensable pour les associations réflexives Généralisation/ Spécialisation Exemple Classe abstraite UML vers Java Professeur enseigne est enseigné par Module est sous la responsabilité de Employé est responsable de 13/34 Multiplicité 14/34 Diagramme de classes UML I. Ait Sadoune I spécifie combien d’instance d’une classe sont liées à une instance d’une autre classe I 1, 0..1, M..N, *, 0..*, 1..* Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Multiplicité Diagramme de classes UML I. Ait Sadoune I spécifie combien d’instance d’une classe sont liées à une instance d’une autre classe I Association 1, 0..1, M..N, *, 0..*, 1..* Généralisation/ Spécialisation Exemple 14/34 Classe Classe abstraite Professeur enseigne est enseigné par 1..* 0..* Module UML vers Java Multiplicité Diagramme de classes UML I. Ait Sadoune I spécifie combien d’instance d’une classe sont liées à une instance d’une autre classe I Classe Association 1, 0..1, M..N, *, 0..*, 1..* Généralisation/ Spécialisation Exemple Classe abstraite Professeur enseigne est enseigné par 1..* 0..* Module est sous la responsabilité de 0..1 0..* Employé est responsable de 14/34 UML vers Java Associations n-aires 15/34 Diagramme de classes UML I. Ait Sadoune I C’est une association qui relie plus de deux classes Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Associations n-aires Diagramme de classes UML I. Ait Sadoune I Classe C’est une association qui relie plus de deux classes Association Exemple Généralisation/ Spécialisation Classe abstraite Étudiant UML vers Java 0..* assiste Professeur enseigne 0..* 15/34 0..* assuré Module Classe d’Association 16/34 Diagramme de classes UML I. Ait Sadoune I Un attribut (une méthode) d’une relation est un attribut (une méthode) qui caractérise la relation Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Classe d’Association Diagramme de classes UML I. Ait Sadoune I Un attribut (une méthode) d’une relation est un attribut (une méthode) qui caractérise la relation Classe Association Généralisation/ Spécialisation Exemple Classe abstraite Évaluation UML vers Java note : Integer validate() : boolean Étudiant 16/34 Module Agrégation Diagramme de classes UML I. Ait Sadoune Classe I Une relation d’agrégation est un cas particulier de relation d’association. Association Généralisation/ Spécialisation Classe abstraite UML vers Java 17/34 Agrégation Diagramme de classes UML I. Ait Sadoune Classe I Une relation d’agrégation est un cas particulier de relation d’association. Association I Elle représente un lien de subordination correspondant au verbe “possède” Généralisation/ Spécialisation Classe abstraite UML vers Java 17/34 Agrégation Diagramme de classes UML I. Ait Sadoune Classe I Une relation d’agrégation est un cas particulier de relation d’association. Association I Elle représente un lien de subordination correspondant au verbe “possède” Elle correspond généralement à une relation tout ou parties (composé/composant) Généralisation/ Spécialisation I I 17/34 Il y a agrégation si le tout dépend de l’existence de ses parties pour avoir un sens. Classe abstraite UML vers Java Agrégation Diagramme de classes UML I. Ait Sadoune Classe I Une relation d’agrégation est un cas particulier de relation d’association. Association I Elle représente un lien de subordination correspondant au verbe “possède” Elle correspond généralement à une relation tout ou parties (composé/composant) Généralisation/ Spécialisation I I Il y a agrégation si le tout dépend de l’existence de ses parties pour avoir un sens. Exemple Itinéraire Gare 2..* 17/34 Classe abstraite UML vers Java Composition 18/34 Diagramme de classes UML I. Ait Sadoune Classe Association I La composition est une agrégation avec un lien plus fort I Si on détruit une instance d’une classe, on détruit tout ses composants Généralisation/ Spécialisation Classe abstraite UML vers Java Composition Diagramme de classes UML I. Ait Sadoune Classe Association I La composition est une agrégation avec un lien plus fort I I 18/34 Si on détruit une instance d’une classe, on détruit tout ses composants Elle représente un lien correspondant au verbe “est composé de” Généralisation/ Spécialisation Classe abstraite UML vers Java Composition Diagramme de classes UML I. Ait Sadoune Classe Association I La composition est une agrégation avec un lien plus fort I I Si on détruit une instance d’une classe, on détruit tout ses composants Elle représente un lien correspondant au verbe “est composé de” Exemple Paragraphe Phrase 1..* 18/34 Généralisation/ Spécialisation Classe abstraite UML vers Java Plan Diagramme de classes UML I. Ait Sadoune Classe Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java 19/34 Association Généralisation/ Spécialisation Classe abstraite UML vers Java Définitions 20/34 Diagramme de classes UML I. Ait Sadoune I Généralisation : factoriser les propriétés/opérations de plusieurs classes dans une super-classe. Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Définitions Diagramme de classes UML I. Ait Sadoune I I Généralisation : factoriser les propriétés/opérations de plusieurs classes dans une super-classe. Spécialisation : capturer les particularités des instances d’une sous-classe. Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java 20/34 Définitions Diagramme de classes UML I. Ait Sadoune I I Généralisation : factoriser les propriétés/opérations de plusieurs classes dans une super-classe. Spécialisation : capturer les particularités des instances d’une sous-classe. Classe Association Généralisation/ Spécialisation Classe abstraite Personne Etudiant 20/34 UML vers Java Définitions Diagramme de classes UML I. Ait Sadoune I I Généralisation : factoriser les propriétés/opérations de plusieurs classes dans une super-classe. Spécialisation : capturer les particularités des instances d’une sous-classe. Classe Association Généralisation/ Spécialisation Classe abstraite Personne Etudiant I 20/34 Une sous classe possède les propriétés/opérations de ses super-classes. UML vers Java Exemple Diagramme de classes UML I. Ait Sadoune Personne Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java Etudiant Salarié Apprenti 21/34 Professeur Contraintes Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation I Ce sont des propriétés concernant les liens de généralisations Classe abstraite UML vers Java 22/34 Contraintes Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation I I Ce sont des propriétés concernant les liens de généralisations Représentées par la contrainte entre accolades : {contrainte} I 22/34 disjoint : les ensembles formés par les instances des classes filles sont disjoints Classe abstraite UML vers Java Contraintes 22/34 Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation I I Ce sont des propriétés concernant les liens de généralisations Représentées par la contrainte entre accolades : {contrainte} I I disjoint : les ensembles formés par les instances des classes filles sont disjoints overlapping : les ensembles formés par les instances des classes filles se recouvrent Classe abstraite UML vers Java Contraintes 22/34 Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation I I Ce sont des propriétés concernant les liens de généralisations Représentées par la contrainte entre accolades : {contrainte} I I I disjoint : les ensembles formés par les instances des classes filles sont disjoints overlapping : les ensembles formés par les instances des classes filles se recouvrent complete : les ensembles formés par les instances des classes filles forment l’ensemble des instances de la classe mère Classe abstraite UML vers Java Contraintes Diagramme de classes UML I. Ait Sadoune Classe Exemple Association Généralisation/ Spécialisation Personne Classe abstraite UML vers Java {disjoint} Homme 23/34 Femme Contraintes Diagramme de classes UML I. Ait Sadoune Classe Exemple Association Généralisation/ Spécialisation Animal Classe abstraite UML vers Java {overlapping} Herbivore 24/34 Quadrupede Contraintes Diagramme de classes UML I. Ait Sadoune Classe Exemple Association Généralisation/ Spécialisation Personne Classe abstraite UML vers Java {complete} Homme 25/34 Femme Plan Diagramme de classes UML I. Ait Sadoune Classe Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java 26/34 Association Généralisation/ Spécialisation Classe abstraite UML vers Java Définitions Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation I Une classe abstraite est une classe qui ne peut pas être instanciée Classe abstraite UML vers Java 27/34 Définitions Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation 27/34 I Une classe abstraite est une classe qui ne peut pas être instanciée Classe abstraite I Toute classe qui possède une méthode abstraite doit être abstraite UML vers Java Définitions Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation 27/34 I Une classe abstraite est une classe qui ne peut pas être instanciée Classe abstraite I Toute classe qui possède une méthode abstraite doit être abstraite UML vers Java I Une classe abstraite n’a d’intérêt que parce qu’elle possède des classes filles Définitions Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation I Une classe abstraite est une classe qui ne peut pas être instanciée Classe abstraite I Toute classe qui possède une méthode abstraite doit être abstraite UML vers Java I Une classe abstraite n’a d’intérêt que parce qu’elle possède des classes filles Remarque I 27/34 La classe/méthode abstraite est notée en italique Exmple Diagramme de classes UML I. Ait Sadoune Classe Association Animal Généralisation/ Spécialisation Classe abstraite seNourir() 28/34 UML vers Java Herbivore Carnivore seNourir() seNourir() Plan Diagramme de classes UML I. Ait Sadoune Classe Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java 29/34 Association Généralisation/ Spécialisation Classe abstraite UML vers Java Classes Diagramme de classes UML I. Ait Sadoune Classe Association Transcription des Classes 30/34 I A chaque classe UML correspond une classe Java Généralisation/ Spécialisation Classe abstraite UML vers Java Classes Diagramme de classes UML I. Ait Sadoune Classe Association Transcription des Classes 30/34 I I A chaque classe UML correspond une classe Java Chaque attribut de la classe UML sera un attribut de la classe Java I I cardinalité ≤ 1 : une variable cardinalité > 1 : un ensemble de variables Généralisation/ Spécialisation Classe abstraite UML vers Java Classes Diagramme de classes UML I. Ait Sadoune Classe Association Transcription des Classes 30/34 I I A chaque classe UML correspond une classe Java Chaque attribut de la classe UML sera un attribut de la classe Java I I I cardinalité ≤ 1 : une variable cardinalité > 1 : un ensemble de variables la visibilité de la propriété est la visibilité de l’attribut Généralisation/ Spécialisation Classe abstraite UML vers Java Classes Diagramme de classes UML I. Ait Sadoune Classe Association Transcription des Classes I I A chaque classe UML correspond une classe Java Chaque attribut de la classe UML sera un attribut de la classe Java I I I I la visibilité de la propriété est la visibilité de l’attribut Chaque opération de la classe UML sera une méthode de la classe Java I 30/34 cardinalité ≤ 1 : une variable cardinalité > 1 : un ensemble de variables le sens de l’argument de l’opération est non retranscrit Généralisation/ Spécialisation Classe abstraite UML vers Java Associations Diagramme de classes UML I. Ait Sadoune Classe Association Transcription des Associations 31/34 I Les associations sont traduites par des attributs dans les classes reliées I I cardinalité ≤ 1 : une variable cardinalité > 1 : un ensemble de variables Généralisation/ Spécialisation Classe abstraite UML vers Java Associations Diagramme de classes UML I. Ait Sadoune Classe Association Transcription des Associations 31/34 I Les associations sont traduites par des attributs dans les classes reliées I I I cardinalité ≤ 1 : une variable cardinalité > 1 : un ensemble de variables Un attribut est ajouté uniquement si l’association est navigable Généralisation/ Spécialisation Classe abstraite UML vers Java Associations Diagramme de classes UML I. Ait Sadoune Classe Association Transcription des Associations 31/34 I Les associations sont traduites par des attributs dans les classes reliées I I cardinalité ≤ 1 : une variable cardinalité > 1 : un ensemble de variables I Un attribut est ajouté uniquement si l’association est navigable I Le nom de l’attribut est le nom de l’extrémité navigable Généralisation/ Spécialisation Classe abstraite UML vers Java Associations Diagramme de classes UML I. Ait Sadoune Classe Association Transcription des Associations I Les associations sont traduites par des attributs dans les classes reliées I I 31/34 cardinalité ≤ 1 : une variable cardinalité > 1 : un ensemble de variables I Un attribut est ajouté uniquement si l’association est navigable I Le nom de l’attribut est le nom de l’extrémité navigable I Contraintes en général non retranscrite Généralisation/ Spécialisation Classe abstraite UML vers Java Les ensembles de variables 32/34 Diagramme de classes UML I. Ait Sadoune Classe Association I L’ensemble de variables sera traduit par RSA en différents ensemble suivant les propriétés de l’attribut/association. Généralisation/ Spécialisation Classe abstraite UML vers Java Les ensembles de variables 32/34 Diagramme de classes UML I. Ait Sadoune Classe Association I L’ensemble de variables sera traduit par RSA en différents ensemble suivant les propriétés de l’attribut/association. I aucune propriété supplémentaire : I traduit en Collection. Généralisation/ Spécialisation Classe abstraite UML vers Java Les ensembles de variables 32/34 Diagramme de classes UML I. Ait Sadoune Classe Association I L’ensemble de variables sera traduit par RSA en différents ensemble suivant les propriétés de l’attribut/association. I aucune propriété supplémentaire : I I traduit en Collection. possède la propriété ordered : I traduit en List. Généralisation/ Spécialisation Classe abstraite UML vers Java Les ensembles de variables 32/34 Diagramme de classes UML I. Ait Sadoune Classe Association I L’ensemble de variables sera traduit par RSA en différents ensemble suivant les propriétés de l’attribut/association. I aucune propriété supplémentaire : I traduit en Collection. I possède la propriété ordered : I possède la propriété unique : I I traduit en List. traduit en Set. Généralisation/ Spécialisation Classe abstraite UML vers Java Les ensembles de variables Diagramme de classes UML I. Ait Sadoune Classe Association I L’ensemble de variables sera traduit par RSA en différents ensemble suivant les propriétés de l’attribut/association. I aucune propriété supplémentaire : I I possède la propriété ordered : I possède la propriété unique : I I I traduit en List. traduit en Set. possède les propriétés ordered et unique : I 32/34 traduit en Collection. traduit en SortedSet. Généralisation/ Spécialisation Classe abstraite UML vers Java Les ensembles en Java Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation Classe abstraite UML vers Java 33/34 L’Héritage et les classes abstraites Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation Transcription des Généralisations/Spécialisations Classe abstraite UML vers Java I 34/34 La relation de généralisation est traduite par une relation d’héritage en Java L’Héritage et les classes abstraites Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation Transcription des Généralisations/Spécialisations Classe abstraite UML vers Java I La relation de généralisation est traduite par une relation d’héritage en Java I 34/34 Attention : problème si héritage multiple L’Héritage et les classes abstraites Diagramme de classes UML I. Ait Sadoune Classe Association Généralisation/ Spécialisation Transcription des Généralisations/Spécialisations Classe abstraite UML vers Java I La relation de généralisation est traduite par une relation d’héritage en Java I I 34/34 Attention : problème si héritage multiple L’abstraction est traduite directement d’UML vers Java