静态内部类:使用static 关键字修饰一个成员内部类,该内部类被称为静态内部类,它可以在不创建外部类对象的情况下被实例化.
创建静态内部类对象的语法格式:
外部类名.内部类名 变量名=new 外部类名.内部类名();
public class Outer{
private static int num=10;
static class Inner{
public void show(){
System.out.println("num="+num);
}
}
}
public class Test{
public static void main(String[] args){
Outer.Inner inner=new Outer.Inner();
inner.show();
}
}
注意:在静态内部类中只能访问外部类的静态成员,如果将上面例子的变量num前面的static去掉,程序就会编译出错;
在静态内部类中可以定义静态的成员,而在非静态内部类中不允许定义静态的成员