package myPackage;
enum CarDemo {
MARUTI(1), SUXIKI(2),GALIOK(4);
String st;
int i;
CarDemo(String st){
this.st=st;
}
CarDemo(int i){
this.i=i;
System.out.println(i);
}
}
public class Car{
public static void main(String a[]){
CarDemo s =CarDemo.MARUTI;
}
}
/ 当我执行了这个程序并且它显示了枚举常量的整个值。在main方法中创建枚举类型期间是否调用了enum构造函数三次? /
答案 0 :(得分:1)
Enum Members (JLS-8.9.3),有这个(除其他事项外)说 -
当初始化相应的隐式声明字段时,会产生枚举常量。
因此,当main()
运行并使用s
初始化CarDemo s = CarDemo.MARUTI;
时,所有成员都已创建。