查看完整内容
部分顺序:
默认初始化
super(); 调用父类空参构造
A(){}; 没有父类,于是对成员顺序初始化,因为没有成员,所以接着运行A里面的默认super();以下的代码
print(); 由于print被重写了,所以执行打印语句
然后打印结果temp=0 A(){}的语句也执行完后,A加载完成,加载B
private int temp=30; 对成员顺序初始化,这时temp被显式初始化赋值30,覆盖掉默认初始化的0
B(){} 对成员初始化完成后,继续运行B构造中的super();以下 ...