输出如下:
第一部分是初始化顺序
第二部分是方法动态绑定的过程
第三部分是this在动态和静态绑定中的具体含义有所不同。尤其是B中this.first实际上调用C的first,很经典的实例,分享。
A initial
B initial
C initial
------------
B second
A second
A i=1
B i=2
super i=1
------------
C first
B first
A first
C first
B first
A first
输出如下:
第一部分是初始化顺序
第二部分是方法动态绑定的过程
第三部分是this在动态和静态绑定中的具体含义有所不同。尤其是B中this.first实际上调用C的first,很经典的实例,分享。
A initial
B initial
C initial
------------
B second
A second
A i=1
B i=2
super i=1
------------
C first
B first
A first
C first
B first
A first