执行顺序:父类静态块-->子类静态块-->父类非静态块-->父类构造方法-->子类非静态块-->子类构造方法
package com.deno;
public class Father {
static {
System.out.println("Father中静态代码块一");
}
static {
System.out.println("Father中静态代码块二");
}
public Father() {
System.out.println("Father构造方法");
}
{
System.out.println("Father中非静态块");
}
}
//子类继承父类
class Son extends Father {
static {
System.out.println("Son中静态代码块一");
}
static {
System.out.println("Son中静态代码块二");
}
public Son() {
System.out.println("Son构造方法");
}
{
System.out.println("Son中非静态块");
}
public static void main(String[] args) {
Son son = new Son();
}
}