天天看点

java类初始化顺序_java类内容初始化顺序

在java类中一般有:成员变量、静态变量、成员方法、静态方法、构造方法。那么这几个的初始化顺序是什么呢?

初始化的先后顺序是:静态变量(类load进内存就初始化)------静态代码块(类load进内存就初始化)--------成员变量(对象初始化时)------------初始化块------------构造函数

测试程序如下:

package com.evan;

public class InitialOrderTest {

public static String staticStr = "静态变量";

public String field = "成员变量";

static {

System.out.println(staticStr);

System.out.println("静态初始化块");

}

{

System.out.println(field);

System.out.println("初始化块");

}

public InitialOrderTest() {

System.out.println("构造函数");

}

public static void main(String[] args) {

System.out.println("初始化顺序:");

new InitialOrderTest();

}

}

原文:http://blog.csdn.net/zl544434558/article/details/37818865