- 调用基类构造器。首先构造继承关系最上层类的构造器,然后是下一层导出类的构造器,以此类推,直至最底层的导出类。
- 按声明顺序调用成员的初始化方法。
- 调用导出类构造器的主体。
demo
class A {
public A() {
System.out.println("A()");
}
}
class B {
public B() {
System.out.println("B()");
}
}
class C {
public C() {
System.out.println("C()");
}
}
class D {
public D() {
System.out.println("D()");
}
}
class AA extends A {
private D d = new D();
public AA() {
System.out.println("AA()");
}
}
public class AAA extends AA {
private B b = new B();
private C c = new C();
public AAA() {
System.out.println("AAA()");
}
public static void main(String[] args) {
new AAA();
}
}
output
A()
D()
AA()
B()
C()
AAA()