“公共”或“受保护”方法对于不实现任何接口的私有嵌套类没有任何区别..?
如果私有嵌套类没有实现任何接口或从任何类继承,对于其方法的修饰符,似乎“public”或“protected”或没有修饰符没有任何区别。如果编译器只允许它们“私有”,那将更有意义。那么为什么java允许它们呢?
class Enclosing {
private class Inner {
private void f1() {}
void f2() {}
protected void f3() {}
public void f4() {}
}
void test() {
Inner o= new Inner();
o.f1();
o.f2();
o.f3();
o.f4();
}
}