Programmation Orientée Objet – Java

publicité
Programmation Orientée Objet – Java
Bertrand Estellon
Département Informatique et Interactions
Aix-Marseille Université
21 septembre 2016
Bertrand Estellon (DII – AMU)
Programmation Orientée Objet – Java
21 septembre 2016
1 / 171
Java
Enumérations
Les énumérations
Il est possible de définir des énumérations :
enum Suit {
SPADES,
HEARTS,
DIAMONDS,
CLUBS;
}
Une énumération est une classe avec des éléments prédéfinis et statiques :
Suit suit = Suit.SPADES;
/* ... */
if (suit == Suit.SPADES) { /* .... */ }
Bertrand Estellon (DII – AMU)
Programmation Orientée Objet – Java
21 septembre 2016
141 / 171
Java
Enumérations
Les énumérations
Définition de champs, de méthodes et d’un constructeur :
enum Suit {
SPADES("Pique", "Pi"),
HEARTS("Coeur", "Co"),
DIAMONDS("Carreau", "Ca"),
CLUBS("Trèfle", "Tr");
private final String name;
private final String symbol;
Suit(String name, String symbol) {
this.name = name;
this.symbol = symbol;
}
public String name()
{ return name; }
public String symbol() { return symbol; }
}
Bertrand Estellon (DII – AMU)
Programmation Orientée Objet – Java
21 septembre 2016
142 / 171
Java
Enumérations
Les énumérations
Un exemple d’utilisation de l’énumération précédente :
public static void main(String[] args) {
for (Suit suit : Suit.values())
System.out.printf("Le symbole de %s est %s",
suit.name(),
suit.symbol());
}
Un autre exemple :
public static void main(String[] args) {
for (Suit suit : Suit.values())
System.out.printf("La position de %s est %d",
suit.name(),
suit.ordinal());
}
Bertrand Estellon (DII – AMU)
Programmation Orientée Objet – Java
21 septembre 2016
143 / 171
Téléchargement