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

Accessibility scope of Java access modifiers

本问题已经有最佳答案,请猛点这里访问。

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

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


为了更好地理解你需要看到这个

1
2
3
4
5
6
7
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


这里的重要区别在于Defaultprotected之间。
默认值:永远不可在包外访问
受保护:仅可在包外访问,如果且仅当类是子类时才可访问
请参阅此了解进一步的详细信息。编辑:因为您的问题的答案也与You can access the protected member by make your class a sub class of the class , in which protected member is defined相同。