首先,普通类是不允许声明为静态的,只有内部类才可以
非静态内部类:
1. 成员必须是非静态的,不能有静态成员、静态成员方法、
2. 能够访问外部类的静态和非静态成员
比如:B是A的非静态内部类,实例化B,则:A.B b = new A().new B();
静态内部类:
1. 可以包含静态成员、非静态成员、非静态方法
2. 只能访问外部类的静态成员。
比如:B是A的静态内部类,A.B b = new A.B()
非静态内部类:
1. 成员必须是非静态的,不能有静态成员、静态成员方法、
2. 能够访问外部类的静态和非静态成员
比如:B是A的非静态内部类,实例化B,则:A.B b = new A().new B();
静态内部类:
1. 可以包含静态成员、非静态成员、非静态方法
2. 只能访问外部类的静态成员。
比如:B是A的静态内部类,A.B b = new A.B()