一尘不染

为什么不能降低方法在Java子类中的可见性?

java

当您在子类中重写某个方法时降低了其可见性时,为什么编译器会给出错误消息?


阅读 268

收藏
2020-09-08

共1个答案

一尘不染

因为子类的每个实例仍然需要是基类的有效实例(请参见Liskov替换原理)。

如果子类突然失去了基类的一个属性(例如,一个公共方法),那么它将不再是基类的有效替代品。

2020-09-08