Java Enums: So meisterst du Konstanten in deinem Code
Java Enums ermöglichen es dir, Variablen mit fix definierten Werten zu erstellen. Diese werden großgeschrieben und sind nachträglich nicht mehr änderbar. Sie verbessern die Logik sowie Lesbarkeit deines Codes und zahlen so auf einen Clean Code ein.
Was macht Java Enums aus?
Hinter dem Begriff „Java Enums“ steckt ein Datentyp, der zwar in einer normalen Class genutzt werden kann, sich aber wesentlich unterscheidet. Eine Enum ist eine Variablengattung mit eigenen, fixen und dadurch limitierten Werteoptionen. Java Enums fungieren als Konstanten, die verhindern, dass unerwünschte Werte im Code landen. Das sichert die logische Struktur und macht alles übersichtlicher. Der Name „Enum“ leitet sich vom englischen „enumeration“ für „Aufzählung“ ab.
Die Syntax von Java Enums
Die Syntax der Java Enums folgt immer diesem Aufbau:
enum Name_der_Klasse {
WERT1,
WERT2,
WERT3
}javaUm diese Klasse zu definieren, startest du mit dem Keyword „enum“ anstelle von „class“ oder „interface“. Danach benennst du die Sonderklasse und führst die erlaubten Konstanten in geschweiften Klammern an. Diese Konstanten werden immer in Großbuchstaben angeführt und mittels Komma getrennt.
Praxisbeispiel für die Sonderklasse
Ein klassisches Beispiel für Java Enums ist die Liste der Monate. Da es nur zwölf Optionen gibt, legst du diese als Konstanten an. Wird später eine Variable vom Typ „Monate“ gebraucht, sind nur diese Definitionen gültig. Im Code sieht das so aus:
enum Monate {
JANUAR,
FEBRUAR,
MAERZ,
APRIL,
MAI,
JUNI,
JULI,
AUGUST,
SEPTEMBER,
OKTOBER,
NOVEMBER,
DEZEMBER
}javaUm eine Variable vom Typ „Monate“ zu deklarieren, weist du ihr einen Wert zu und nutzt den Java-Befehl System.out.println für die Anzeige. Die Umsetzung im Code:
public class Main {
public static void main(String[] args) {
Monate monat = Monate.APRIL;
System.out.println(monat);
}
}javaJava Enums in einer Klasse nutzen
Du kannst Java Enums direkt innerhalb einer Klasse einbauen. Bezogen auf unser Beispiel sieht das so aus:
public class Main {
enum Monate {
JANUAR,
FEBRUAR,
MAERZ,
APRIL,
MAI,
JUNI,
JULI,
AUGUST,
SEPTEMBER,
OKTOBER,
NOVEMBER,
DEZEMBER
}
public static void main(String[] args) {
Monate monat = Monate.APRIL;
System.out.println(monat);
}
}javaAlle Konstanten mit der Methode values abfragen
Möchtest du dir sämtliche verfügbaren Werte anzeigen lassen, hilft dir die Methode values() weiter. Sie gibt die Konstanten als Array aus. Der passende Code für unser Beispiel:
enum Monate {
JANUAR,
FEBRUAR,
MAERZ,
APRIL,
MAI,
JUNI,
JULI,
AUGUST,
SEPTEMBER,
OKTOBER,
NOVEMBER,
DEZEMBER
}
public class Main {
public static void main(String[] args) {
for (Monate monat : Monate.values()) {
System.out.println(monat);
}
}
}javaKombination von Java Enums mit switch
Java Enums lassen sich hervorragend mit anderen Methoden verknüpfen. Hier siehst du ein Beispiel für das Zusammenspiel mit switch():
enum Monate {
JANUAR,
FEBRUAR,
MAERZ,
APRIL,
MAI,
JUNI,
JULI,
AUGUST,
SEPTEMBER,
OKTOBER,
NOVEMBER,
DEZEMBER
}
public class Main {
public static void main(String[] args) {
Monate monat = Monate.APRIL;
switch (monat) {
case APRIL:
System.out.println("Das Freibad ist geschlossen.");
break;
case MAI:
System.out.println("Das Freibad ist geschlossen.");
break;
case JUNI:
System.out.println("Das Freibad freut sich auf Ihren Besuch!");
break;
// Dies können Sie nun für alle Monate ausprobieren.
}
}
}java