请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师,关于里氏替换原则的问题

图片描述
老师,你在含义1说不能覆盖父类非抽象方法,在含义4说可以重写,这是不是矛盾呀?
还有一个问题:含义3中,你说子类的方法重载父类方法,可是重载不是指同一类中的方法吗?

正在回答 回答被采纳积分+3

1回答

geelylucky 2025-09-19 23:56:56

同学你好,第一个问题中,含义4是说可以重写抽象方法哈,含义1中说的是不能覆盖非抽象方法;

第二个问题:

为什么子类方法的前置条件必须更宽松?

核心思想:子类必须能够完全替换掉其父类,而不破坏任何依赖于父类的现有代码。

如果子类的前置条件比父类更严格,就意味着父类能接受的一些参数,子类反而不能接受。这直接违反了“替换”原则,因为客户端代码在使用父类时建立起来的约定,被子类破坏了。


0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号