類加載順序
- 父類的靜態變量和父類靜態塊賦值
- 自身的靜態變量賦值和自身的靜態塊賦值
- 父類成員變量賦值和父類塊賦值
- 父類構造函數賦值
- 自身成員變量賦值和自身塊賦值
- 自身構造函數賦值
注意
1.變量和代碼塊那個在前那個先加載
2.如果在加載靜態變量或者代碼塊時觸發了非靜態的構造函數加載,則接着加載非靜態的,再靜態
public class A {
static A aclass = new A();
static {
System.out.println("1");
}
{
System.out.println("2");
}
A() {
System.out.println("3");
System.out.println("a="+a+",b="+b);
}
public static void getA() {
System.out.println("4");
}
public static void main(String[] args) {
getA();
}
int a = 110;
static int b = 112;
}