java類成員中的訪問級別有哪些
我們知道想要訪問一個網站,根據身份的不同,會有一些使用上的限制,這就是許可權級別的體現。在java的類成員中,有一些訪問的級別是需要我們瞭解的,主要分為四種:、、、package。下面我們就這四種訪問修飾符分別進行詳細的介紹。
一、四種訪問修飾符
1.public修飾符用於暴露域和方法,以便在類定義的包外部能訪問它們。對包和類中必要的介面元素,也需要使用這個級別;main()方法必須是public的,()方法也必須是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。
以上就是java類成員中的訪問級別介紹,關於這四種修飾符,我們在使用類成員的使用會賦予不同的身份,大家在學習後就可以進行尋找對應的級別了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3486/viewspace-2830948/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java中類的成員方法和變數的訪問許可權Java變數訪問許可權
- Java類的設計和封裝及類成員的訪問控制Java封裝
- Java中變數之區域性變數、本類成員變數、父類成員變數的訪問方法Java變數
- 關於Java中類的成員Java
- c# 基類派生類成員方法訪問C#
- C++派生類物件訪問基類的protected成員C++物件
- c#繼承父子類成員間的互訪問性C#繼承
- Java的靜態成員類Java
- Java繼承中成員變數的訪問特點「圖文分析」包含繼承中重名訪問的特點Java繼承變數
- .net框架筆記型別成員及其訪問限度框架筆記型別
- java中的成員內部類,程式碼截圖Java
- C++類中的常成員和靜態成員C++
- C/C++—— 除了用類成員函式訪問類私有成員變數外,還可以通過類物件地址來直接訪問和修改類的私有成員變數C++函式變數物件
- 在Linux中,RAID級別有哪些?LinuxAI
- http代理有哪些類別?HTTP
- 事務級別有哪些?
- 探討Java類中成員變數的初始化方式Java變數
- java內部類之成員內部類Java
- Java中父類方法重寫有哪些需要注意的?Java
- Java訪問類變數Java變數
- Python的靜態方法和類成員方法都可以被類或例項訪問,兩者概念不容易理清,但還是有區別的Python
- Java內部類詳解-- 成員內部類Java
- Java synchronized物件級別與類級別的同步鎖Javasynchronized物件
- Java堆疊的區別有哪些Java
- .NET中的特殊型別成員 (轉)型別
- 子父類中成員變數變數
- Java內部類的訪問規則Java
- YTU-OJ-Problem J: B3 指向基類的指標訪問派生類的成員函式指標函式
- java內部類之成員內部類例項Java
- Java 通過反射獲取類的資訊(成員變數,成員方法,構造方法)Java反射變數構造方法
- 使用屬性而不是可訪問的資料成員
- 內部類中的成員的定義和使用
- 高防伺服器有哪些類別?伺服器
- EJB的local介面能被哪些JAVA程式訪問?Java
- Python中類變數、成員變數、區域性變數的區別Python變數
- java內部類之成員內部類之匿名內部類Java
- python中樹有哪些種類Python
- 【python】類的特殊成員Python