Sobes.tech
Junior — Middle

Erklären Sie das Konzept der Enum Class und seine Unterschiede zu normalen Aufzählungen

sobes.tech KI

Antwort von AI

In Android (und allgemein in Java) ist enum class eine Aufzählungsklasse, die eine Menge von Konstanten darstellt und die Möglichkeit bietet, Felder, Methoden und Konstruktoren hinzuzufügen.

Unterschiede zu normalen Aufzählungen (z.B. in C oder einfachen Konstanten):

  • Typensicherheit — enum ist eine vollständige Klasse, und eine Variable vom Enum-Typ kann nur die definierten Werte annehmen.
  • Möglichkeit, Verhalten hinzuzufügen — man kann Methoden und Felder innerhalb des Enums definieren.
  • Verwendung in switch — enum ist praktisch in Auswahl-Operatoren.

Beispiel für enum in Java/Android:

public enum Status {
    NEW(0),
    IN_PROGRESS(1),
    DONE(2);

    private int code;

    Status(int code) {
        this.code = code;
    }

    public int getCode() {
        return code;
    }
}

Daher ist enum class eine erweiterte Methode zur Definition eines festen Satzes von Konstanten mit zusätzlicher Funktionalität, im Gegensatz zu einfachen Aufzählungen, die nur eine Sammlung von Zahlen oder Strings ohne Logik sein können.