diff --git a/Enums.md b/Enums.md index 08a394b..13c92ab 100644 --- a/Enums.md +++ b/Enums.md @@ -1,3 +1,16 @@ -- Semikolon am Ende der Deklaration ist optional +- Kann wie Feld in einer Klasse deklariert werden + - `enum A {HALLO, WELT}` + - Semikolon am Ende der Deklaration ist optional! + - Kann nicht in einer Methode deklariert werden. +- Muss keine Werte enthalten (was natürlich wenig sinnvoll ist) - Enums werden ähnlich wie Klassen deklariert und unterliegen denselben Sichtbarkeitsregeln -- Schlüsselwort `enum`, statt `class` (muss nach Sichtbarkeits-Modifikatoren stehen, wie üblich) \ No newline at end of file +- Enums auf root-Ebene dürfen **nicht** `static`, `final`, `abstract`, `protected` pder `private` sein. +- Schlüsselwort `enum`, statt `class` (muss nach Sichtbarkeits-Modifikatoren stehen, wie üblich) +- Konstruktoren können nie direkt aufgerufen werden. +- `MyEnum.values()` liefert Array der Werte (Typ des Enums!) + +## Aufbau +- Liste der Konstanten immer zuerst +- Wenn keine weiteren Anweisungen folgen ist das Semikoloon optional, sonst Pflicht +- Ggf. Felder, Konstuktoren und Methoden danach +- Konstruktor darf nicht `public` sein! \ No newline at end of file