java類成員中的訪問級別淺析

我們知道想要訪問一個網站,根據身份的不同,會有一些使用上的限制,這就是權限級別的體現。在java的類成員中,有一些訪問的級別是需要我們瞭解的,主要分為四種:public、private、protected、package。下面我們就這四種訪問修飾符分別進行詳細的介紹。

一、四種訪問修飾符

1.public修飾符用於暴露域和方法,以便在類定義的包外部能訪問它們。對包和類中必要的接口元素,也需要使用這個級別;main()方法必須是public的,toString()方法也必須是public的。一般不會用public暴露一個域,除非這個域已經被聲明為final。(包內訪問)

2.private標識的訪問模式,表示私有的域和方法隻能被同一個類中的其他方法訪問,實現瞭數據隱藏;必要時,可以通過方法訪問私有變量。(類內訪問)

3.protected修飾符提供一個從包外部訪問包(有限制)的方法。在域和方法前增加protected修飾符不會影響同一個包內其他類和方法對它們的訪問。要從包外部訪問包(其中含有protected成員的類),必須保證被訪問的類是帶有protected成員類的子類。也就是說,希望包中的一個類被包之外的類繼承重用時,就可以使用這個級別。一般應該慎用。(跨包訪問)

4.package是默認的保護模式,又叫做包訪問,沒有任何修飾符時就采用這種保護模式。包訪問允許域和方法被同一個包內任何類的任何方法訪問。(包中類被包外類繼承重用)

二、修飾符說明

1.前三種類型的訪問級別使用以下三個關鍵字之一來指定:public,private或protected。第四種類型稱為默認訪問級別(或包級別),並且通過不使用訪問修飾符來指定。

如果類成員使用public關鍵字聲明為公開,如果類本身可訪問的話,則可以從Java代碼中的任何位置訪問它。

2.如果使用private關鍵字將類成員聲明為私有,則隻能在聲明類的主體中訪問,而在其他任何地方都不能訪問。

3.如果使用protected關鍵字將類成員聲明為保護,則可以從同一包中的類或該類的子類來訪問此類成員,即使子類位於不同的包中也是可以訪問的。

4.如果不為類成員使用任何訪問級別修辭符,則它具有包級別訪問權限。 具有包級別訪問權限的類成員可以從同一個包中訪問。

5.類成員的訪問級別可以從最嚴格到最不嚴格,即:private,package-level,protected和public。

知識點擴展:

類可以是public或default(或包級別)。在本教程中主要介紹 public,private,protected 這幾個訪問級別修辭符的使用。
類成員的訪問級別確定程序的哪個區域可以訪問它。 以下四個訪問級別修飾符之一可以用於類成員:

  • 公開(public)
  • 私有(private)
  • 保護(protected)

默認或包級別訪問
前三種類型的訪問級別使用以下三個關鍵字之一來指定:public,private或protected。第四種類型稱為默認訪問級別(或包級別),並且通過不使用訪問修飾符來指定。

如果類成員使用public關鍵字聲明為公開,如果類本身可訪問的話,則可以從Java代碼中的任何位置訪問它。

如果使用private關鍵字將類成員聲明為私有,則隻能在聲明類的主體中訪問,而在其他任何地方都不能訪問。

如果使用protected關鍵字將類成員聲明為保護,則可以從同一包中的類或該類的子類來訪問此類成員,即使子類位於不同的包中也是可以訪問的。

如果不為類成員使用任何訪問級別修辭符,則它具有包級別訪問權限。 具有包級別訪問權限的類成員可以從同一個包中訪問。

到此這篇關於java類成員中的訪問級別淺析的文章就介紹到這瞭,更多相關java類成員中的訪問級別有哪些內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: