public private protected和默認的區別
Java中對類以及類中的成員變量和成員方法通過訪問控制符(access specifier)進行區分控制。剛學Java語言的同學可能對public private protected以及默認(一般稱包訪問權限)的區別不是很清楚,尤其是protected和默認的區別。本篇就來説説這個事兒。
操作方法
(01)private這個大家都知道,就是隻有在本類中才能訪問。
(02)public正好和private相反,在任何地方都能訪問。
(03)protected是在本包內能訪問,而在包外只有它的子類能訪問。如圖,package1這個包中有一個A類,它有一個成員變量a,用protected訪問控制符進行修飾。
(04)如圖,在本包中另一個類繼承自A,它是可以訪問A的這個成員變量的。如果是本包中的一個普通類(也就是不繼承自A),也是可以訪問A的成員變量的,這個大家可以自行測試。
(05)如圖,在別的包中的一個普通類訪問A的成員變量,這個是不可以的。
(06)但是在別的包中的子類,也就是繼承自A的類,訪問A的成員變量是可以的。
(07)再來説默認(包訪問權限)。如圖,還是package1中的A類的成員變量a,這一次什麼也不加。
(08)和protected一樣,只要是同一個包下的類,不管是子類還是其它普通的類,都可以訪問A的這個成員變量。
(09)在另一個包中的類,如果是普通類,和protected一樣,是不能訪問A類中的這個成員變量的。
(10)在另一個包中的類,即使是子類,也是不能訪問A類中的這個成員變量的。這一點和protected不一樣。
(11)總結一下,private是隻有本類中才能訪問,public是都能訪問,默認(包訪問權限)是隻有本包內才能訪問,包括本包內的子類和普通類,而protected是隻要本包內就能訪問,包括本包內的子類和普通類,另外別的包內的子類也能訪問,但是普通類不能訪問。所以説protected和默認(包訪問權限)是很相似的,在同一個包內,它們是一樣的,而在另一個包內,默認是不能訪問的,而protected是隻有子類能訪問。
特別提示
如果您還有其它疑問,可以在評論裏告訴我。如果您有急需解決的問題,可以查看右側我的個人介紹。
您也可以點擊分享,把本文分享給更多需要的人。
我的新浪微博暱稱為“段子批發商”,歡迎互粉啊。
-
word中替換功能的六個實用技巧
在這個講效率的年代,word的使用也需要效率,那麼,我們怎麼才能使word的使用也有效率呢,這就需要我們在平時多積累一些實用小技巧,但如何能夠更加了解word各個功能的使用技巧呢?那下面我們就以Word中替換功能為例,詳細講解它的6個技巧。操作方法(01)第一、去除word裏括號...
-
如何使用新浪郵箱發郵件
許多人擁有一個電子郵箱,卻不會使用它來發送電子郵件,接下來,我以新浪郵箱為例教大家如何發送電子郵件。操作方法(01)首先,登陸郵箱(02)找到“寫信”,單擊打開(03)收件人就是對方的電子郵箱地址,輸入到方框內(04)主題可以隨便寫(05)正文寫在紅色的框內(06)下面是例子(07)寫完後,單擊...
-
adobe acrobat教程---5分鐘輕鬆編輯文檔
AdobeAcrobat的功能非常強大,只是很多人都沒有去深入的使用它。AdobeAcrobat能輕鬆簡化您的工作。它的主要功能有:1.將PDF轉換為其它格式;2.編輯PDF;3.文檔創建和分析表單;4.創建PDF文件;5.合併文件;6.簡化審閲和審批;7.保護PDF文件;8.前後一致地準備文件。9.將...
-
商用wifi路由器怎麼來設置?怎麼用呢?
不論是餐廳、咖啡廳、足療店,還是機場、商場,只要是人流量大、人羣密集的地方,WiFi已成為人們連接互聯網的重要上網方式,它在為人們提供便捷的移動網絡服務同時,也正潛移默化的改變着人們的上網習慣、消費習慣,讓人們更加依賴它。因此不少商家看到了可以藉助WiFi平台...