public class Parent {
public enum ChildType {
FIRST_CHILD("I am the first."),
SECOND_CHILD("I am the second.");
private String myChildStatement;
ChildType(String myChildStatement) {
this.myChildStatement = myChildStatement;
}
public String getMyChildStatement() {
return this.myChildStatement;
}
}
public static void main(String[] args) {
// Why does this work?
System.out.println(Parent.ChildType.FIRST_CHILD.myChildStatement);
}
}
在参考此枚举时,是否存在关于Parent子类,同一包中的类等的访问控制的其他规则?我可以在哪里找到规范中的规则?
答案 0 :(得分:21)
答案 1 :(得分:7)
因为枚举实际上是父类的内部类。
答案 2 :(得分:0)
class A
private a;
class B
private b
a = x; // ok
new B().b = y; // ok
class C extends A{}
new C().a = z; // ok