static 修饰内部类
static一般用来修饰成员变量或函数也修饰代码块,一般不能修饰类,但是可以修饰内部类,被修饰的内部类可以直接作为一个普通类来用,不需要创建一个外部类的实例,而普通内部类的引用需要创建一个外部类的实例。
package com.tonyluis; public class StaticClassTest { public static void main(String[] args) { //静态内部类可以直接new StaticInner si=new StaticInner(); //非静态内部类需创建一个父类的实例,方能new StaticClassTest sct=new StaticClassTest(); Inner i=sct.new Inner(); } class Inner{ } static class StaticInner{ } }
注意静态的main()方法只能使用静态的成员变量或成员函数,因为静态方法初始化要早于实例对象。