我正在开发一个简单的项目。而且我的项目中与里氏原理的含义有冲突。
我用这个例子简化了我的项目问题:
public class Animal {
public void feed() {
// do something here
}
}
public class Dog extends Animal {
// some methods and attributes
@Override
public void feed() {
// never call parent feed() method (super.feed())
}
}
所以,我的问题是,如果我不调用父方法并在 override 方法中编写全新的代码,这是否违反了里氏原则?
谢谢。
最佳答案
不会,只要子类的实现满足基类的期望就不会违反里氏原则。
关于java - 重写而不调用父方法,违反了里氏原则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48046418/