package com.test;
public class OrderTest {
public static void main(String[] args) {
new Child();
/*
执行到这里的结果:
parent static block
Child static block
parent construct block
Child construct block
*/
new Child();
/*
执行到这里的结果:
parent construct block
Child construct block
这里可以说明 静态块只执行一次。
*/
/*所以最终结果为:
parent static block
Child static block
parent construct block
Child construct block
parent construct block
Child construct block
*/
}
}
class Parent {
static {
System.out.println("parent static block");
}
public Parent() {
System.out.println("parent construct block");
}
}
class Child extends Parent {
static {
System.out.println("Child static block");
}
public Child() {
System.out.println("Child construct block");
}
}