Não, enum eh como se fosse uma classe… pode possuir métodos, atributos etc
Olha por exemplo, pode possuir métodos abstratos, sobrescrever métodos etc.
public enum Atributo
{
WINTER
{
String e()
{
return "Inverno";
}
},
SUMMER
{
String e()
{
return "Verao";
}
};
abstract String e();
public String toString()
{
return e();
}
}
Ai comparando eles por exemplo:
public Atributo x()
{
return Atributo.SUMMER;
}
public static void main(String[] args)
{
Atributo z = new Enums().x();
if (z == Atributo.SUMMER)
{
System.out.println(z);
}
System.out.println(Atributo.SUMMER == Atributo.WINTER);
System.out.println(Atributo.WINTER == Atributo.WINTER);
System.out.println(Atributo.SUMMER == Atributo.SUMMER);
//System.out.println(Atributo.SUMMER == 1); //isso da erro e compilação
}
Repare que comparo “Atributo” com “Atributo”, sempre, pode até criar métodos que retorna “Atributo” e se tento comparar um “Atributo” com int, ai da erro de compilação…
da uma olhada se vc entende, qq coisa… isso ai eh o que eu sei mais ou menos de enums hehe pode ser que tenha mais coisas ainda.