在某些特定情况下,首选枚举常量来枚举

时间:2015-09-28 07:16:00

标签: java enums

我正在阅读J.Bloch的Effective Java,并提出以下内容(关于枚举的Setcion):

  

将多个行为与a关联起来,可以减少枚举数量   单一方法。在这种相对罕见的情况下,更喜欢常数特定的   枚举方法可以打开自己的值

对我来说,这种使用编译时常量的情况并不清楚。你不能提供一个反映这个的简单例子吗?

1 个答案:

答案 0 :(得分:7)

我认为该段落中讨论的内容是:

void myMethod(MyEnum enum){
    switch(enum){
    case VALUE1:
        break;
    case VALUE2:
        break;
    }
}

enum MyEnum{
VALUE1(){
    protected void myMethod(){
        //body
    }
},
VALUE2(){
    protected void myMethod(){
        //body
    }
}
protected abstract void myMethod();
}