1、构造器的调用顺序
(1)创建A类,B类继承A类:
A类:
public class A {
static {
System.out.println("A.static");
}
public A(){
System.out.println("A");
}
}
B类:
public class B extends A {
static {
System.out.println("B.static");
}
public B(){
System.out.println("B");
}
}
测试类:
public class TestAb {
public static void main(String[] args) {
A a=new B();
a=new B();
}
}
A.static
B.static
A
B
A
B
(2)执行顺序:
先初始化静态成员,然后调用父类构造器,再初始化非静态成员,最后调用自身构造器。