3-1关于构造方法的疑问

3-1关于构造方法的疑问

2-18选择题说,父类有双参的构造,所以子类也必须有一个双参构造,可是在3-1的视频中,父类有双参的构造,子类只有三参的,不会报错吗?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

当子类构造方法中没有显式标注(Super语句super(带参或不带参均可))的时候,默认的是父类的无参构造。应该3-1中的三参构造方法没有报错可能有两个原因:1 父类中有无参构造方法,但子类没有显式用super标注,子类构造方法中,默认调用父类无参的构造方法.  2.在子类中,显式用super() 语句进行显示调用父类的构造方法. 希望可以帮你您


  • morYc 提问者 #1
    我知道原因了,当时的选择题,父类只有一个双参构造,没有无参构造; 所以子类有一个无参构造和一个三参构造(该三参构造有super(aa,bb)且有this.cc=cc的结构)时,无参构造会报错,并提示父类并没有写无参构造; 当时看人提问为什么子类无参构造会报错的回答是:“因为它的父类car构造方法是带有两个参数的。所以子类Truck也需要有带2个形参为String的构造方法。” 此时觉得该答案貌似不够准确,应该是父类没有写无参构造,所以子类的无参构造函数才会报错。
    2018-03-04 22:13:10
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师