继承的一点问题

继承的一点问题

1、父类的构造方法不允许被继承,不允许被重写,为什么?

2、在子类里,this也可以调用父类的可以被访问的属性和方法,那么,它和super的区别在哪里?

3、为什么子类的访问修饰符要大于等于父类的访问修饰符?


正在回答

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

1回答

你好!关于你的第一个和第三个问题,这两个都是Java的语法规则。如果你想问为什么java会这样进行设计,可以想一下,如果构造方法被继承,那么构造方法的名字和类名是相同的,这样的一个方法继承到子类中做什么用呢?是当做普通方法,还是当做子类的构造,因为和子类类名不同,所以肯定不能是子类构造,如果是普通方法,它又没有返回值,所以继承能有什么意义呢。可以在子类中通过super关键字为从父类继承的属性赋值。

关于子类访问修饰符要大于等于父类的问题,这个也是想让子类覆盖方法,覆盖就是把原来的方法包括进来,而不是进行了更严格的限制。

2、关于第二个问题,this和super肯定是不同的,this是用来访问当前类的方法和属性,而super是用来访问父类的。可以看一下我之前对你的问题的回复。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 鱼儿0001 提问者 #1
    五一这几天,老师都休息。假期间我正好又学的比前面起劲,一些问题没人回答,我碰见了同样的问题就出现了会重复好几遍问,要是及早解答不脱两天的话就没这问题了,我很⊙﹏⊙无奈啊****
    2019-05-05 15:55:46
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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