我想知道如何在枚举中实例化一个内部类...如果我有这样的代码:
public enum TestEnum {
BIG(1),SMALL(2),LARGE(3);
int i;
private TestEnum(int i){
this.i = i;
}
public class cs{
cs c = new cs(){
public void met(){
System.out.println("met in enum inner class");
}
};
}
public static void main(String[] args){
//instantiate an object of cs here
}
}
是否可以实例化?
答案 0 :(得分:1)
由于enum
的内部类是非静态的,因此需要一个对象引用来创建新的cs实例:
TestEnum.cs sample = TestEnum.BIG.new cs();
// ^^^
// This could be any instance of TestEnum
请注意,如果cs
未使用其“所有者”static
,您可以使cs
成为enum
嵌套类。
答案 1 :(得分:0)
答案 2 :(得分:0)
这将有效:
TestEnum.BIG.new cs();