由于Java提供了一种覆盖枚举方法的工具,如下所示:
public enum MyEnum{
ONE{
@Override
public void m(){ //do some }
},
TWO{
@Override
public void m(){ //do another somesome }
};
public abstract void m();
}
我想了解使用此设施的好处。乍一看,使用这种压倒一切似乎是一个不太好的决定。但在某些情况下,这样做可能非常方便。
我的问题是:
在枚举中使用覆盖真的很好吗?
例如,在项目中,我使用了这种方式进行21 enumerators
的枚举。当我开始做一个功能时,我在枚举中只有一个方法覆盖,但现在我有8.因此,我有由21个枚举器组成的枚举,其中任何一个都包含8个覆盖抽象方法。阅读枚举越来越难了。
所以,现在我不确定我是否应该在项目中使用它......
Java中引入了什么设施?也许有一些特殊的用例。