Java有私有(private)、受保护(protected)和公共(public)访问修饰符。你能解释一下这些修饰符的可访问性范围吗?
如何在不同的包中访问一个受保护的成员?
Java有私有(private)、受保护(protected)和公共(public)访问修饰符。你能解释一下这些修饰符的可访问性范围吗?
如何在不同的包中访问一个受保护的成员?
为了更好地理解,您需要查看这个:
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
这里的重要区别在于Default
和protected
。
默认:从不可在包外部访问
受保护:仅在类是子类的情况下才可在包外部访问。
编辑:由于你问题的答案也是一样的,即 您可以通过使您的类成为包含受保护成员的类的子类来访问受保护成员