public class WuTi { public static void main(String[] args) {
C c = new C();
}
}
class A {
public A() {
System.out.println("My name is A");
}
}class B {
public B() {
System.out.println("My name is C");
}
}class C extends A {
B b = new B();
}
C c = new C();
}
}
class A {
public A() {
System.out.println("My name is A");
}
}class B {
public B() {
System.out.println("My name is C");
}
}class C extends A {
B b = new B();
}
结果就又不一样了。
运行时用:java -verbose:class WuTi 可以看到类的加载。所以,其实楼的本意是想理解构造函数是如何执行的。但这里有个“类构造函数”的说法,请参考学镛的文章:全世界所有程式員都會犯的錯誤
http://www.oreilly.com.tw/sleepless2/mistake.html