顺序:
父类静态块 > 子类静态块 > 父类成员变量赋值 > 父类普通块 > 父类构造方法 > 子类成员变量赋值 > 子类普通块 > 子类构造方法
package basic;
public class Father {
public int i=1;
static{
System.out.println("父类的静态块");
}
{
System.out.println("父类的成员变量:"+i);
System.out.println("父类的普通块");
}
public Father(){
System.out.println("父类的构造方法");
}
}
package basic;
public class Son extends Father{
public int i=2;
static{
System.out.println("子类的静态块");
}
{
System.out.println("子类的成员变量:"+i);
System.out.println("子类的普通块");
}
public Son(){
System.out.println("父类的构造方法");
}
}
package basic;
public class Test {
public static void main(String[] args) {
Father f=new Son();
}
}