日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > java >内容正文

java

(转)Java中的private、protected、public和default的区别

發(fā)布時(shí)間:2025/3/20 java 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (转)Java中的private、protected、public和default的区别 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

?1 訪問(wèn)修飾符

1.1 理解

默認(rèn)什么都不加,就是default(不用把default寫出來(lái))。
意思就是只能由跟這個(gè)類在同一個(gè)包中的類來(lái)訪問(wèn),比private限制更少,但比protected限制更多。'

Java訪問(wèn)修飾符包括private,default,protected和public。含義分別表示私有的,默認(rèn)的,受保護(hù)的和公有的訪問(wèn)修飾符。這些訪問(wèn)修飾符既可以修飾類中的屬性,又可以修飾類中的方法,而public和default還可以修飾類。在同一個(gè)java文件里,公有類有且僅有一個(gè),并且該文件命名為類名.java。

Java訪問(wèn)修飾符就是確定類中屬性或方法的訪問(wèn)權(quán)限,換句話說(shuō),就是這些屬性和方法所起的作用范圍。

private,私有的訪問(wèn)權(quán)限,也是最嚴(yán)格的訪問(wèn)權(quán)限,僅只能在設(shè)置了該權(quán)限的類中訪問(wèn),利用這個(gè)訪問(wèn)權(quán)限,表現(xiàn)出封裝思想。

default,默認(rèn)的訪問(wèn)權(quán)限,也是可以省略的訪問(wèn)權(quán)限,它不僅能在設(shè)置了該權(quán)限的類中訪問(wèn),也可以在同一包中的類或子類中訪問(wèn)。

protected,受保護(hù)的訪問(wèn)權(quán)限,它除了具有default的訪問(wèn)權(quán)限外,還可以在不同包中所繼承的子類訪問(wèn)。

public,公有的訪問(wèn)權(quán)限,也是最寬松的訪問(wèn)權(quán)限,不僅可以是同一個(gè)類或子類,還是同一個(gè)包中的類或子類,又還是不同包中的類或子類,都可以訪問(wèn)。

要想更深入地理解這些訪問(wèn)權(quán)限,一方面需要明白各自的作用域,另一方面更是要弄清楚各自所體現(xiàn)出來(lái)的編程思想,比方說(shuō),prvite表現(xiàn)的封裝思想,public表現(xiàn)的面向接口編程的思想等。

在面向?qū)ο笤O(shè)計(jì)和編程的過(guò)程中,歸根結(jié)底就是類的設(shè)計(jì)。而要設(shè)計(jì)出不僅滿足當(dāng)前需求同時(shí)也能符合未來(lái)需求的類,就很有必要對(duì)類中屬性和行為設(shè)置合適的訪問(wèn)
權(quán)限。那些應(yīng)該為私有的,那些又應(yīng)該為公有的,還有那些又應(yīng)該為受保護(hù)的等,都應(yīng)該給予合理的規(guī)劃和布局,一來(lái)保證程序的功能要求,二來(lái)要體現(xiàn)程序的擴(kuò)展
性能,三來(lái)要呈現(xiàn)程序友好性質(zhì)。總之,程序應(yīng)該更好地服務(wù)用戶。而訪問(wèn)權(quán)限在這樣宏偉目標(biāo)里扮演著重要角色。

?

1.2 理解

下表為Java訪問(wèn)控制符的含義和使用情況


?類內(nèi)部?本包?子類外部包?
public??√?√?√?√
protected?√?√?√
default??√?√
?private?√

?


?

不寫時(shí)默認(rèn)為friendly?

?注意:Java的訪問(wèn)控制是停留在編譯層的,也就是它不會(huì)在.class文件中留下任何的痕跡,只在編譯的時(shí)候進(jìn)行訪問(wèn)控制的檢查。其實(shí),通過(guò)反射的手段,是可以訪問(wèn)任何包下任何類中的成員,例如,訪問(wèn)類的私有成員也是可能的。

區(qū)別:

(1)public:可以被所有其他類所訪問(wèn)。

(2)private:只能被自己訪問(wèn)和修改。

(3)protected:自身,子類及同一個(gè)包中類可以訪問(wèn)。

(4)default(默認(rèn)):同一包中的類可以訪問(wèn),聲明時(shí)沒(méi)有加修飾符,認(rèn)為是friendly。


?

與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的(转)Java中的private、protected、public和default的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。