答案 0 :(得分:0)
受保护的范围在包内。即使您拥有该类的实例,也无法从其他包访问它。
Oracle documentation
中的范围表Modifier Class Package Subclass World
public Y Y Y Y
protected Y Y Y N
no modifier Y Y N N
private Y N N N
答案 1 :(得分:0)
按惯例 - 这是protected
定义的内容。仅通过继承来保护子类中的成员。别无他法。
让我们假设我们可以使用父类实例访问子类中受保护的成员,该子类位于不同的包中。
现在,如果成员被宣布为public
或protected
,您将如何区分您的子课程?此外,如果可以使用父实例访问它,那么为什么只能从子类访问它?它应该可以使用父类实例从任何地方访问。
我希望,如果你向自己提出这些问题 - 这一切都将开始有意义。