Java 类初始化顺序

 

  对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是

1.(静态变量、静态初始化块)注:这两个的初始化顺序为在类中先后出现的顺序。>

2(变量、初始化块)注:这两个的初始化顺序为在类中先后出现的顺序。>

3 构造器 

 我们也可以通过下面的测试代码来验证这一点:

 

public class InitialOrder {
	  // 静态变量
	public static String staticField = "静态变量";
    // 变量
    public String field = "变量";
    // 静态初始化块
    static {
       System.out.println(staticField);
       System.out.println("静态初始化块");
    }
    // 初始化块
    {
       System.out.println(field);
       System.out.println("初始化块"); 
    }
    // 构造器
    public InitialOrder() {
      System.out.println("构造器");
    }
    public static void main(String[] args) {
         new InitialOrder();
    }
  
}

 

 输出结果为:

                     静态变量
                     静态初始化块
                     变量
                     初始化块
                     构造器

你可能感兴趣的:(java)