Junior — Middle
Spiega il concetto di Enum Class e la sua differenza rispetto alle enumerazioni normali
sobes.tech AI
Risposta dell'AI
In Android (e in Java in generale), enum class è una classe di enumerazione che rappresenta un insieme di costanti con la possibilità di aggiungere campi, metodi e costruttori.
Differenze rispetto alle enumerazioni normali (ad esempio in C o costanti semplici):
- Sicurezza di tipo — enum è una classe completa, e una variabile di tipo enum può assumere solo i valori definiti.
- Possibilità di aggiungere comportamento — si possono definire metodi e campi all’interno dell’enum.
- Utilizzo in switch — enum è comodo da usare nelle istruzioni di scelta.
Esempio di 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;
}
}
Pertanto, enum class è un modo esteso di definire un insieme fisso di costanti con funzionalità aggiuntive, a differenza delle enumerazioni semplici, che possono essere solo un insieme di numeri o stringhe senza logica.