我发现Enum
s 定义如下:
public Enum MyEnum {
ONE
{
@Override
public int getSomething() {
return 1;
}
},
TWO
{
@Override
public int getSomething() {
return 2;
}
}
int getSomething()
{
return 0;
}
}
不知何故,我对此实现感到某种不适,因为我认为理想情况下应该为此目的定义一个字段,并且该类应该类似于:
public Enum MyEnum{
ONE(1),
TWO(2)
private int theSomething;
private MyEnum(int something) {
theSomething = something;
}
int getSomething()
{
return theSomething;
}
}
问题是除了个人不适之外,我找不到任何好的理由来更改此代码。有吗?