Java初始化顺序

Java初始化顺序

http://www.blogjava.net/itkui/archive/2007/07/07/128771.html

class Test1 {
 //3.父类构造器
    Test1(){
     System.out.print("5\n"); 
    }
     //1.父类静态初始化块
    static{
         System.out.print("6\n");
    }
}
public class Test2 extends Test1{
    //4.初始化块
    {
        System.out.print("1\n");
    }
    //6.子类构造器
     Test2(){
         System.out.print("2\n");
    }
    //2.子类静态初始化块
    static{
         System.out.print("3\n");
    }
    //5.初始化块
    {
        System.out.print("4\n");
    }
public static void main(String[] args) {
    //即使newTest2实例,静态块初始化也进行
     new Test2();
     }
}


你可能感兴趣的:(Java初始化顺序)