说明:静态内部类是定义在外部类的成员位置,并且有static修饰。
- 可以访问外部类的所有静态成员,包含私有的,但不能直接访问非静态成员。
- 可以添加任意访问修饰符(public、protected,默认,private),因为它的地位就是一个成员。
- 作用域:同其他的成员一样,为整个类体。 ```java package test;
public class Main { public static void main(String[] args) { Outer outer = new Outer(); outer.hi(); } }
class Outer { //外部类 private int n1 = 10; private static String name = “WTY2002”; private static void cry() {}
//Inner10就是静态内部类
//放在外部类的成员位置,使用static 修饰
//2. 可以添加任意访问修饰符(public、protected 、默认、private),因为它的地位就是一个成员
//3. 作用域 :同其他的成员,为整个类体
public static class Inner {
public void say() {
//1. 可以直接访问外部类的所有静态成员,包含私有的,但不能直接访问非静态成员
//System.out.println(n1);//报错!!!
System.out.println("name = " + name);
cry();
}
}
public void hi(){
Inner inner = new Inner();
inner.say();
}
} ```