【发布时间】:2023-04-04 18:43:01
【问题描述】:
我准备通过书阅读来参加 scjp 考试。
书名:
A constructor in an enum class can only be specified as private.
但我写了测试代码:
enum En{
VAL_1;
En(){
System.out.println("123");
}
public static void main(String [] args){
}
}
此代码对我有用。
是书籍错误还是编译器错误?
附:带有受保护和公共访问修饰符的代码不起作用
【问题讨论】:
-
enum对象由enum自己创建。您不能从外部创建它的对象,因此如果构造函数不是private,则更改可见性没有任何意义。你可以改变它,但它没有任何意义,但public和protected是不允许的。 -
@Braj 为什么对于包可见和受保护使用差异政治?
-
@Katona 很有趣 - 谢谢
标签: java constructor enums