在Java 9中,我可以编写如下代码:
enum Abc {
A, B, C;
static protected int foo = 4; // what is the purpose of the protected variables like this in enum?
}
我认为没有意义,因为我们无法继承或实现枚举。
修改:此问题与Why are protected members allowed in final java classes?
相同答案 0 :(得分:3)
它意味着它始终意味着什么:只能从同一个包中的子类或类访问。你是对的,因为你不能继承这个类,它在实践中与包私有字段没有任何不同。