老师,关于里氏替换原则的问题
来源:3-9 里氏替换原则讲解
 
			张婧仪
2025-09-19

老师,你在含义1说不能覆盖父类非抽象方法,在含义4说可以重写,这是不是矛盾呀?
还有一个问题:含义3中,你说子类的方法重载父类方法,可是重载不是指同一类中的方法吗?
写回答
	1回答
- 
				  geelylucky 2025-09-19 同学你好,第一个问题中,含义4是说可以重写抽象方法哈,含义1中说的是不能覆盖非抽象方法; 第二个问题: 为什么子类方法的前置条件必须更宽松? 核心思想:子类必须能够完全替换掉其父类,而不破坏任何依赖于父类的现有代码。 如果子类的前置条件比父类更严格,就意味着父类能接受的一些参数,子类反而不能接受。这直接违反了“替换”原则,因为客户端代码在使用父类时建立起来的约定,被子类破坏了。 00
相似问题
