Java访问修饰符的可访问性范围

Dum*_*hne 0 java access-modifiers

Java具有私有,受保护和公共访问修饰符.你能解释一下这些修饰语的可访问性范围吗?

如何在不同的包中访问受保护的成员?

Fre*_*eak 14

为了更好地理解,您需要看到这一点

Access Modifiers

                   Same Class      Same Package            Subclass     Other packages
public               Y                Y                      Y                   Y
protected            Y                Y                      Y                   N
no access modifier   Y                Y                      N                   N
private               Y               N                      N                   N
Run Code Online (Sandbox Code Playgroud)


这里的重要区别在于Defaultprotected.
默认值:永远不能在程序包外部访问
受保护:只能在程序包外部访问,当且仅当该类是子类时
请参阅此处以获取更多详细信息.
编辑:因为你的问题的答案也是一样的You can access the protected member by make your class a sub class of the class , in which protected member is defined