public class Final {
private static String s1="A";
private String s2="B";
private static void m1()
{
System.out.println("m1");
}
private void m2()
{
System.out.println("m2");
}
static class InnerClass{
public static void m3()
{
System.out.println(s1);//可以访问外部私有静态数据
//System.out.println(s2);//不能访问外部成员变量
m1();
//m2();
}
public void m4()
{
System.out.println(s1);//由于是静态内部类 故所有的成员变量 方法都不能访问
//System.out.println(s2);
m1();
//m2();
}
}
public static void main(String args[])
{
Final.InnerClass in=new Final.InnerClass();
}
}
静态内部类的对象可以直接生成:Outer.Inner in = new Outer.Inner();而不需要通过生成外部类对象来生成。