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;
}
}
/当我执行这个程序并且它显示枚举常量的完整值时。在主方法中创建枚举类型期间是否调用了枚举构造函数三次?/
最佳答案
Enum Members (JLS-8.9.3) ,有这个(除其他事项外)要说 -
An enum constant is said to be created when the corresponding implicitly declared field is initialized.
因此,当您的 main()
运行并使用 CarDemo s = CarDemo.MARUTI;
初始化 s
时,所有成员都会创建。
关于java - java枚举数据类型中的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24854291/