什么是静态嵌套类?静态和非静态嵌套类有什么区别?
静态内部类是嵌套在具有static修饰符的另一个类中的类。除了可以访问在其内部定义的类的私有成员之外,它与顶级类几乎相同。
static
class Outer { private static int x; static class Inner1 { } class Inner2 { } }
类Inner1是静态内部类。类Inner2是一个非静态的内部类。两者之间的区别是,非静态内部类的实例被永久连接到的实例Outer-你不能创建一个Inner2没有Outer。不过,您可以Inner1独立创建对象。
Inner1
Inner2
Outer
中的代码Outer,Inner1并且Inner2都可以访问x; 不允许使用其他代码。