2015-04-24 175 views
0

定义嵌套数据类型我想在Java使用枚举

public class AppConstants {  
    enum E1{   
     public enum E11{ // Here i am getting:- as of release 5, 'enum' is a keyword, and may not be used as an identifier 
      var1 
     }  
     public enum E12{ 
      var1 
     }   
    } 
} 

我的目标是访问诸如E1.E11.var1或定义类型“E1.E11`来定义使用enum嵌套常数。什么是解决方案或替代方案?

回答

4

像这样:

enum E1 { 
    ; // <-- 
    enum E11 {} 
    ... 

如果枚举具有除常量声明中,(在这种情况下,空的)常数部分需要由分号结束。

+1

尼斯后使用E1.E12.var1!非常好! –

+0

我几乎接近这个解决方案。 – manish

0

为什么不使用:

enum E1{   
    E11(Object var1_value1), E12(Object var1_value2); 
    Object var1; 
    E1(Object var){ 
     var1=var; 
    } 
} 

您可以在