官方介绍
可能大家都知道,JAVA中protected权限是本类、同包类、子类。
但是如果子类不在和父类不在同一个包中,那将会发生什么?
子类在其他包中访问
我们将父类和子类放在两个包中,如下所示:
可以发现:
若子类与父类不在同一包中,那么在子类中,子类实例可以访问其从父类继承而来的protected属性,而不能访问父类实例的protected方法。不在父类和子类所在的包中访问
可以看到其他包中,不管是子类的实例还是父类的实例访问都没有权限导致报错!不管该包是否包含父类与子类
总结
父类的protected成员是包内可见的,并且对子类可见;若子类与父类不在同一包中,那么在子类中,子类实例可以访问其从父类继承而来的protected方法,而不能访问父类实例的protected方法。不在父类和资类所在的包中访问,则没有相应的权限