Java語言入門教程(三):Java語言的訪問權限修飾符

    上篇文章中,提到了Java類需要打包,打包後可以進行訪問權限控制。本文中,將對Java語言中的訪問權限修飾符,進行簡單介紹。

       一個Java應用有很多類,但是有些類,並不希望被其他類使用。每個類中都有數據成員和方法成員,但是並不是每個數據和方法,都允許在其他類中調用。如何能做到訪問控制呢?就需要使用訪問權限修飾符。

       Java語言中的訪問權限修飾符有4種,但是僅有3個關鍵字,因爲不寫訪問權限,在Java中被稱爲默認權限,或同包權限,本文中以(default)代替。下面按照權限從小到大的順序對4中訪問權限分別介紹。

1.  私有權限 private

private可以修飾數據成員,構造方法,方法成員,不能修飾類(此處指外部類,不考慮內部類)。被private修飾的成員,只能在定義它們的類中使用,在其他類中不能調用。

2.  默認權限 (default)

類,數據成員,構造方法,方法成員,都能夠使用默認權限,即不寫任何關鍵字。默認權限即同包權限,同包權限的元素只能在定義它們的類中,以及同包的類中被調用。

3.受保護權限protected

protected可以修飾數據成員,構造方法,方法成員,不能修飾類(此處指外部類,不考慮內部類)。被protected修飾的成員,能在定義它們的類中,同包的類中被調用。如果有不同包的類想調用它們,那麼這個類必須是定義它們的類的子類。

4.  公共權限 public

public可以修飾類,數據成員,構造方法,方法成員。被public修飾的成員,可以在任何一個類中被調用,不管同包或不同包,是權限最大的一個修飾符。

      

       有關Java語言的修飾符,需要注意的問題有如下幾個:

1.  並不是每個修飾符都可以修飾類(指外部類),只有publicdefault可以。

2.  所有修飾符都可以修飾數據成員,方法成員,構造方法。

3.  爲了代碼安全起見,修飾符不要儘量使用權限大的,而是適用即可。比如,數據成員,如果沒有特殊需要,儘可能用private

4.  修飾符修飾的是“被訪問”的權限。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章