Sobes.tech
Junior — Middle

Enum Class түшүнүгүн жана анын жөнөкөй тизмектерден айырмасын түшүндүрүңүз

sobes.tech AI

AIден жооп

Androidda (we umumiy Java'da) enum class — bu konstanta to'plamini ifodalovchi, maydonlar, metodlar va konstruktorlar qo'shish imkoniyatiga ega bo'lgan enum sinfidir.

Oddiy enumlardan (masalan, C yoki oddiy konstantalar) farqi:

  • Tip xavfsizligi — enum to'liq sinf bo'lib, va enum turidagi o'zgaruvchi faqat belgilangan qiymatlarni olishi mumkin.
  • Xulq-atvor qo'shish imkoniyati — enum ichida metodlar va maydonlar aniqlanishi mumkin.
  • Switch'da foydalanish — enum ni tanlash operatorlarida qulay foydalanish mumkin.

Java/Android'da enum misoli:

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

    private int code;

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

    public int getCode() {
        return code;
    }
}

Shunday qilib, enum class — bu doimiy konstantalar to'plamini aniqlashning kengaytirilgan usuli bo'lib, oddiy enumlardan farqli o'laroq, qo'shimcha funksionallikka ega, ular faqat raqamlar yoki satrlar to'plami bo'lishi mumkin, lekin mantiqiy emas.