【发布时间】:2018-08-26 20:44:03
【问题描述】:
在 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?一样
【问题讨论】:
-
Java 8 也允许这样做。
-
如果我没记错的话,Protected 还允许访问包。不回答你的问题,只是说。
-
@MadPhysicist 它正好回答了这个问题。
-
这个问题不能重复。请删除此标记。我在问枚举类型。
-
@Makoto 从 Java 5 开始就有可能,当时引入了
enum类型。忽略这是一个enum的事实,您可以编写具有过时的protected修饰符的/* not public */ class Abc { static protected int foo = 4; },因为Java 1.0...