静态内部类
说明:静态内部类是定义在外部类的成员位置,并有static修饰
- 可以直接访问外部类的所有静态成员,包含私有的,但不能直接访问非静态成员
- 可以添加任意访问修饰符。(它的地位就是一个==成员==)
- 作用域:同其他的成员,为整个类体
- 成员内部类---访问-->外部类(比如:静态属性)【访问方式:直接访问所有静态成员】
- 外部类--访问-->静态内部类【访问方式:先创建,再访问】
private int x = 10;
private static int y = 20;
public void test(){
// 外部类可以使用静态内部类的类名作为调用者来访问静态内部类的类成员
System.out.println(new InnerClass().a);
System.out.println(InnerClass.b);
}
static class InnerClass {
private int a = 30;
private static int b = 40;
public void test() {
//无法访问
// System.out.println(x);
System.out.println(y);
}