Junior — Middle
Обяснете понятието Enum Class и неговата разлика от обикновените изброявания
sobes.tech AI
Отговор от AI
В Android (и в Java като цяло) enum class е клас за изброяване, който представлява набор от константи с възможност за добавяне на полета, методи и конструктори.
Разлики от обикновените изброявания (например в C или прости константи):
- Типова безопасност — enum е пълен клас, и променлива от тип enum може да приема само зададените стойности.
- Възможност за добавяне на поведение — може да дефинирате методи и полета вътре в enum.
- Използване в switch — enum е удобно за използване в оператори за избор.
Пример за enum в 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;
}
}
Така, enum class е разширен начин за дефиниране на фиксиран набор от константи с допълнителна функционалност, за разлика от простите изброявания, които могат да бъдат просто набор от числа или низове без логика.