本帖最后由 聂峰 于 2012-7-25 11:46 编辑
class X
{
Y b = new Y();//第3步,先初始化类中的成员变量
X()//第5步,调用构造方法,打印了X
{
System.out.print("X");
}
}
class Y
{
Y()
{
System.out.print("Y");//第4步,被new X()调用,打印了Y //第7步,被new Z()调用,打印了Y
}
}
public class Z extends X
{
Y y = new Y();//第6步,调用super()结束后,初始化本类变量
Z()
{
System.out.print("Z");//第8步,执行构造方法,打印了Z
}
public static void main(String[] args)//第1步,main函数入口
{
new Z();//第2步,初始化 Z 对象,调用父类构造方法
}
}
输出结果是:YXYZ |