执行顺序:父类静态块-->子类静态块-->父类非静态块-->父类构造方法-->子类非静态块-->子类构造方法
当父类或子类中有多个静态方法时按在代码中的顺序执行
package day1015; /**
* @author donleo
* date 2019-10-15
* code 代码执行顺序
*/
public class Father { static {
System.out.println("Father中静态代码块一");
}
static {
System.out.println("Father中静态代码块二");
} public Father(){
System.out.println("Father构造方法");
} {
System.out.println("Father中非静态块");
} public static void main(String[] args){
Son son = new Son();
}
} //子类继承父类
class Son extends Father{
static {
System.out.println("Son中静态代码块一");
}
static {
System.out.println("Son中静态代码块二");
} public Son(){
System.out.println("Son构造方法");
} {
System.out.println("Son中非静态块");
}
}
代码执行结果: