更新時(shí)間:2020-03-18 09:35:43 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2199次
今天小編就來講講兩個(gè)權(quán)限修飾符一個(gè)是public,其實(shí)之前講過,另外一個(gè)是什么都不寫那其實(shí)是default或者稱作friendly修飾符。
public:
這個(gè)修飾符權(quán)限完全公開,所有類和包都可以訪問的到
作用:一般用作公開的方法、常量、靜態(tài)變量、靜態(tài)常量等地方
注意:屬性上很少用public,為了保證安全,一般屬性都是要封裝private的。
那default或者說friendly
這個(gè)是包內(nèi)可以訪問,僅僅是包內(nèi)所有類都可以訪問
區(qū)別于protected的是:
protected是
1、包內(nèi)所有類可以訪問
2、包外的子類可以訪問
默認(rèn)訪問權(quán)限是:
1、包內(nèi)可以訪問、同一個(gè)包內(nèi)子類也可以訪問!
2、包外任何類都是不能訪問的!
比如下邊的例子:
大家看到TeaCup繼承了Cup類,Cup的deep屬性是用的protected的訪問權(quán)限,雖然兩個(gè)類在不同包中,但是Cup的派生類也TeaCup是可以直接使用deep這個(gè)屬性的。
那再看下邊這個(gè)例子和上邊例子目錄結(jié)構(gòu)一致,唯一不同的是屬性的訪問權(quán)限是默認(rèn)的:
這個(gè)例子中Desktop中所有屬性都是默認(rèn)訪問權(quán)限,也就是包訪問權(quán)限
StudentDesktop和Desktop分別在兩個(gè)包中
即使StudentDesktop是Desktop的派生類,那StudentDesktop也是無法訪問屬性的。
那默認(rèn)訪問權(quán)限在同一個(gè)包中的子類呢?咱們驗(yàn)證下,把StudentDesktop移動(dòng)到test01包中(鼠標(biāo)拽過去就可以)
那大家看,兩個(gè)在相同目錄了,并且是父子關(guān)系,那屬性是默認(rèn)的訪問權(quán)限,這個(gè)屬性在子類中是可以訪問的!
大家自己試試在同一個(gè)目錄下,屬性默認(rèn)的訪問權(quán)限在非子類的類中是否可以訪問?(其實(shí)是可以訪問的)
那默認(rèn)訪問權(quán)限大家應(yīng)該清楚了。
到此為止private、protected、default和public這四種訪問權(quán)限的方式大家都學(xué)會(huì)了,
我給大家都列舉一下private、protected、default和public這四種訪問權(quán)限的權(quán)限列表吧,看截圖:
以上就是動(dòng)力節(jié)點(diǎn)Java培訓(xùn)機(jī)構(gòu)小編介紹的“哪個(gè)Javase教程好:訪問權(quán)限修飾符”的內(nèi)容,希望對(duì)大家有幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743