Sobes.tech
Junior — Middle

Izskaidrojiet Enum Class jēdzienu un tā atšķirību no parastajiem sarakstiem

sobes.tech AI

Atbilde no AI

Androidā (un kopumā Java) enum class ir izsaukšanas klase, kas pārstāv konstantes ar iespēju pievienot laukus, metodes un konstruktorus.

Atšķirības no parastajiem izsaukšanas (piemēram, C vai vienkāršām konstancēm):

  • Tipa drošība — enum ir pilnvērtīga klase, un enum tipa mainīgais var pieņemt tikai noteiktās vērtības.
  • Iespēja pievienot uzvedību — var definēt metodes un laukus enum iekšienē.
  • Izmantošana switch — enum ir ērti izmantot izvēles izteicienos.

Java/Android piemērs:

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

    private int code;

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

    public int getCode() {
        return code;
    }
}

Tādējādi, enum class ir paplašināts veids, kā definēt fiksētu konstanti kopu ar papildu funkcionalitāti, atšķirībā no vienkāršiem izsaukšanas, kas var būt tikai skaitļu vai virkņu kopums bez loģikas.