原因:创建B类对象,先执行的是B类的无参构造器,在B类的无参构造器中用this调用了有参构造器,然后B类继承于A类,A类是基类,而且有参构造器没用super()且A类有默认无参构造器,所以调用B类的有参方立勋 java基础构造器的时候,会先调用A类的无参构造器,输出a,然后再输出b name,这时候B类的有参构造器this执行后,继续执行B类无参构造器的剩下的语句b。本意是先执行父类构造器,再执行子类的构造器,但是这是不允许的。如果希望指定去调用父类的某个构造器,则显式的调用一下 : super(参数列表)
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/19847.html