Sobes.tech
Junior — Middle

Explique le concept de Enum Class et sa différence avec les énumérations classiques

sobes.tech IA

Réponse de l'IA

En Android (et en Java en général), enum class est une classe d’énumération qui représente un ensemble de constantes avec la possibilité d’ajouter des champs, des méthodes et des constructeurs.

Différences avec les énumérations classiques (par exemple, en C ou constantes simples) :

  • Sécurité de type — enum est une classe complète, et une variable de type enum ne peut prendre que les valeurs définies.
  • Possibilité d’ajouter du comportement — on peut définir des méthodes et des champs à l’intérieur de l’enum.
  • Utilisation dans switch — il est pratique d’utiliser enum dans les instructions de sélection.

Exemple d’enum en 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;
    }
}

Ainsi, enum class est une méthode étendue pour définir un ensemble fixe de constantes avec des fonctionnalités supplémentaires, contrairement aux énumérations simples qui peuvent être simplement un ensemble de nombres ou de chaînes sans logique.