Accessibility scope of Java access modifiers [dupl

2019-04-03 06:09发布

问题:

This question already has an answer here:

  • What is the difference between public, protected, package-private and private in Java? 24 answers

Java has private, protected, and public access modifiers. Can you explain the accessibility scope of these modifiers.

How can I access a protected member within a different package?

回答1:

For better understanding you need to see this

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


Here the important difference is between Default and protected.
Default: Never accessible outside the package
Protected: Only accessible outside the package, if and only if the class is a subclass
Please see this for further details.
Edit: As your question's answer is also the same that You can access the protected member by make your class a sub class of the class , in which protected member is defined