2013-04-18 63 views
-2

Java具有私有,受保護和公共訪問修飾符。你能解釋這些修飾符的可訪問範圍嗎?Java訪問修飾符的訪問範圍

我如何不同的包內訪問受保護的成員?

+1

在這裏找到[http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html](http:// docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html) – 2013-04-18 04:43:19

+0

http://stackoverflow.com/questions/15939002/protected-access-modifier-in-java – jmort253 2013-04-18 04:46:22

+0

官方教程中的表(這是在接受的答案中複製)不是超級教學法。看看[這張表](http://stackoverflow.com/a/33627846/276052)稍微好一點的可視化。 – aioobe 2015-11-13 12:53:30

回答

8

爲了更好地理解,你需要看到這個

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 


這裏的重要區別是Deafultprotected之間。
默認:決不包
受保護的外部訪問:只有包外部訪問,當且僅當類是進一步的細節子類
Please see this
編輯:你的問題的回答也同樣是You can access the protected member by make your class a sub class of the class , in which protected member is defined