亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java的權限修飾符的區別和用法總結

Java的權限修飾符的區別和用法總結

眼眸繁星 2019-03-12 09:08:53
Java的權限修飾符的區別和用法總結
查看完整描述

3 回答

?
寶慕林4294392

TA貢獻2021條經驗 獲得超8個贊

類中的數據成員和成員函數據具有的訪問權限包括:public、private、protect、friendly(包訪問權限)。
1、public:public表明該數據成員、成員函數是對所有用戶開放的,所有用戶都可以直接進行調用
2、private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用,私有財產神圣不可侵犯嘛,即便是子女,朋友,都不可以使用。
3、protected:protected對于子女、朋友來說,就是public的,可以自由使用,沒有任何限制,而對于其他的外部class,protected就變成private。
作用域 當前類 同一package 子孫類 其他package
public √ √ √ √
protected √ √ √ ×
friendly √ √ × ×
private √ × × ×
不寫時默認為friendly ,也即是“包訪問權限”。
protected權限:
往往在初學Java的時候,都不會提訪問權限和修飾符的問題,在Java的學習中一般都要到包的概念學完才會涉及訪問控制:
priavte 本類可見

public 所有類可見

protected 本包和所有子類都可見(本包中的子類非子類均可訪問,不同包中的子類可以訪問,不是子類不能訪問)

friendly 本包可見(即默認的形式)(本包中的子類非子類均可訪問,不同包中的類及子類均不能訪問)12345678

類的訪問權限包括: 包訪問權限和public。
1.私有權限 private
private可以修飾數據成員,構造方法,方法成員,不能修飾類(此處指外部 類,不考慮內部類)。被private修飾的成員,只能在定義它們的類中使用,在 其他類中不能調用。
2.默認權限 (default)
類,數據成員,構造方法,方法成員,都能夠使用默認權限,即不寫任何關 鍵字。默認權限即同包權限,同包權限的元素只能在定義它們的類中,以及同包 的類中被調用。
3.受保護權限protected
protected可以修飾數據成員,構造方法,方法成員,不能修飾類(此處指外 部類,不考慮內部類)。被protected修飾的成員,能在定義它們的類中,同包 的類中被調用。如果有不同包的類想調用它們,那么這個類必須是定義它們的類 的子類。
4.公共權限 public
public可以修飾類,數據成員,構造方法,方法成員。被public修飾的成員 ,可以在任何一個類中被調用,不管同包或不同包,是權限最大的一個修飾符。
有關Java語言的修飾符,需要注意的問題有如下幾個:
1.并不是每個修飾符都可以修飾類(指外部類),只有public和default可 以。
2.所有修飾符都可以修飾數據成員,方法成員,構造方法。
3.為了代碼安全起見,修飾符不要盡量使用權限大的,而是適用即可。比如 ,數據成員,如果沒有特殊需要,盡可能用private。
4.修飾符修飾的是“被訪問”的權限。
5.其他類要訪問一個類的private成員,在其他類中實例化該類的對象,再用該對象調用該類的public方法,public方法就可以訪問該類的private成員了。
6.基礎自父類的子類,不能訪問父類的private成員,也就相當于private成員沒有被子類基礎,換句話說,子類不能繼承父類的private成員。






查看完整回答
反對 回復 2019-03-20
?
侃侃爾雅

TA貢獻1801條經驗 獲得超16個贊

private void button1_Click(object sender, System.EventArgs e)
public override void Display(int depth)
{
Console.WriteLine(new string('-', depth) + name);
foreach (Component component in children)
{
component.Display(depth + 2);
}
}



查看完整回答
反對 回復 2019-03-20
  • 3 回答
  • 0 關注
  • 817 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號