枚举注意点:这里我们为每一个颜色提供了一个说明信息, 然后定义了一个构造函数接受这个说明信息。

虽然enum不可以有public的构造函数,但是我们还是可以定义private的构造函数,在enum内部使用。还是用Color这个例 子。     
    
     public    enum    Color    {     
     Red("This    is    Red"),     
     Green("This    is    Green"),     
     Blue("This    is    Blue");     
    
     private    String    desc;     
    
     Color(String    desc){     
     this.desc    =    desc;     
     }     
    
     public    String    getDesc(){     
     return    this.desc;     
     }     
    
     }     
    
     这里我们为每一个颜色提供了一个说明信息,    然后定义了一个构造函数接受这个说明信息。     
    
     要注意这里构造函数不能为public或者protected,    从而保证构造函数只能在内部使用,客户代码不能new一个枚举值的实例出来。这也是完全符合情理的,因为我们知道枚举值是public    static    final的常量而已。   
posted @ 2010-07-01 10:39  AllenChen  阅读(201)  评论(0编辑  收藏  举报