Junior — Middle
Explique o conceito de Enum Class e a sua diferença para as enumerações normais
sobes.tech IA
Resposta da IA
No Android (e no Java em geral), enum class é uma classe de enumeração que representa um conjunto de constantes com a capacidade de adicionar campos, métodos e construtores.
Diferenças em relação às enumerações normais (por exemplo, em C ou constantes simples):
- Segurança de tipos — enum é uma classe completa, e uma variável do tipo enum só pode aceitar os valores definidos.
- Capacidade de adicionar comportamento — é possível definir métodos e campos dentro do enum.
- Uso em switch — é conveniente usar enum em instruções de seleção.
Exemplo de enum em 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;
}
}
Portanto, enum class é uma forma avançada de definir um conjunto fixo de constantes com funcionalidades adicionais, diferentemente das enumerações simples, que podem ser apenas um conjunto de números ou strings sem lógica.