Types énumérés (enums) Java

Java 5 prend en charge les types énumérés. Ces derniers remplacent l'ancienne notion de typesafe, et sont beaucoup plus compacts et plus faciles à maintenir. Ils peuvent être utilisés pour répertorier des collections de valeurs telles que les jours de la semaine ou les suite d'un jeu de cartes, ou tout jeu de constantes fixe, tels que les commandes d'un menu.

Un enum est représenté par une classe ayant le stéréotype <<enum>>.

  1. Créez une classe dans un diagramme de classes ou dans un diagramme de structure composite, puis double-cliquez sur le symbole de cette classe pour afficher sa feuille de propriétés.
  2. Sur l'onglet Général, sélectionnez <<enum>> dans la liste Stéréotype.


  3. Cliquez sur l'onglet Attributs, puis ajoutez autant d'attributs que nécessaire. Ces attributs ont par défaut le type de données EnumConstant. Par exemple, pour créer un type d'enum contenant des opérations mathématiques standard, vous pouvez créer quatre attributs EnumConstant portant les noms "PLUS", "MOINS", "FOIS" et "DIVISEPAR".


    Remarquez que, compte tenu du fait qu'un enum Java est une classe à part entière, vous pouvez également ajouter d'autres types d'attributs en cliquant sur la colonne Type de données et en sélectionnant un autre type dans la liste.

  4. [facultatif] Vous pouvez créer une classe anonyme pour un EnumConstant en sélectionnant la ligne correspondante sur l'onglet Attributs et en cliquant sur l'outil Propriétés pour afficher sa feuille de propriétés. Sur l'onglet Général, cliquez sur l'outil Créer en regard de la classe Enum afin de créer la classe interne.


    Ces classes anonymes seront affichées sur l'onglet Classificateurs internes de la feuille de propriétés de classe Enum :



    La classe enum Opération, avec une classe anonyme pour chaque EnumConstant afin de permettre différentes opérations arithmétiques, peut être représentée dans un diagrammes de classes comme suit :



    Le code équivalent se présente comme suit :