一尘不染

Java覆盖方法时,为什么我可以增加但不能减少访问量?

java

Java为什么要指定覆盖方法的访问说明符可以比覆盖方法允许更多但不能更少的访问?例如,超类中的受保护实例方法可以在子类中公开,但不能私有。


阅读 281

收藏
2020-03-12

共1个答案

一尘不染

这是OOP中的基本原则:子类是父类的完整实例,因此必须至少提供与父类相同的接口。使受保护的/公共的东西不那么明显将违反这个想法;您可以使子类无法用作父类的实例。

2020-03-12