原因:创建B类对象,先执行的是B类的无参构造器,在B类的无参构造器中用this调用了有参构造器,然后B类继承于A类,A类是基类,而且有参构造器没用super()且A类有默认无参构造器,所以调用B类的有参方立勋 java基础构造器的时候,会先调用A类的无参构造器,输出a,然后再输出b name,这时候B类的有参构造器this执行后,继续执行B类无参构造器的剩下的语句b。本意是先执行父类构造器,再执行子类的构造器,但是这是不允许的。如果希望指定去调用父类的某个构造器,则显式的调用一下 : super(参数列表)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/9371.html