當前位置:
首頁 > 知識 > Java基礎——關於訪問許可權的一道例題

Java基礎——關於訪問許可權的一道例題

一、回顧訪問修飾符

==public:被它修飾的類,屬性,方法,不僅可以跨類訪問,而且可以跨包(package)訪問

==private:可以修飾數據成員,構造方法,方法,不能修飾類,被它修飾的成員只能被本類自已訪問,不能被子類訪問

==protected:可以修飾數據成員,構造方法,方法,不能修飾類,能被本類,同包,或其子類成員訪問(如果是子類,可以跨包)

==預設:不加任何修飾符,只允許同一個包中進行訪問

二、代碼實例

1 package dog;
2
3 public class Dog {
4 // 公共的
5 public void publicMethod {
6 System.out.println("publicMethod");
7 }
8
9 // 保護的
10 protected void protectedMethod { // 被聲明為protected的方法,可以被子類繼承
11 System.out.println("protectedMethod");
12 }
13
14 // 默認的
15 void defaultMethod {
16 System.out.println("defaultMethod");
17 }
18
19 // 私有的
20 private void privateMethod { // 這個方法只可以在類內部被調用
21 System.out.println("privateMethod");
22 }
23 }

1 class T {
2 public static void main(String[] args) {
3 Dog d = new Dog; // 可以訪問
4 d.publicMethod; // 可以訪問
5 d.protectedMethod; // 可以訪問
6 d.defaultMethod; // 可以訪問
7 // d.privateMethod; //私有的方法,不能被在類外訪問
8 }
9 }

1 //在上例的基礎上,演示跨包的情況
2 package cat; //和dog 包不在一起
3
4 import dog.Dog;
5
6 public class Cat {
7 void test {
8 Dog dog = new Dog;
9
10 dog.publicMethod; // 可以
11 // dog.protectedMethod; 不可以
12 // dog.privateMethod; 不可以
13 // dog.defaultMethod; 不可以
14 }
15 }

1 //在前例的基礎上,演示子類中的訪問情況
2 class NiceDog extends Dog {
3 void test {
4 Dog dog = new Dog;
5 dog.publicMethod; // 可以
6 protectedMethod; // 被protected修飾的成員,可以被繼承過來,並這樣調用
7 // dog.protectedMethod; 不可以
8 // dog.privateMethod; 不可以
9 // dog.defaultMethod; 不可以
10
11 }
12 }

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 科技優家 的精彩文章:

easygen通用代碼生成框架
vue-schart:vue.js 的圖表組件
caffe源碼學習之Proto數據格式1

TAG:科技優家 |

您可能感興趣

如何在 Linux 中配置 sudo 訪問許可權
Facebook披露獲得用戶數據特殊訪問許可權的應用和公司
由於GDPR Instapaper暫時關閉了歐洲用戶的訪問許可權
蘋果準備繼續放開音樂人對Apple Music的訪問許可權
Microsoft Teams支持訪客完全訪問許可權
Facebook向61家公司提供用戶數據特殊訪問許可權
Snapchat員工被爆監視用戶,濫用數據訪問許可權
西數My Cloud曝安全漏洞 攻擊者可獲得完整訪問許可權
Augur團隊取消對故障安全終止開關的訪問許可權
這下安心了!Android 9.0終於關閉了這個訪問許可權
Facebook切斷數十萬款應用API訪問許可權,拼多多強制商家進行「臨期奶」打標
重磅!FB切斷數十萬應用API訪問許可權,防止數據再次泄露
McAfee 黑市調查大發現:10美元就能獲得機場的 RDP 訪問許可權
智能電視如何設置應用訪問許可權?當貝市場一招搞定!
記一次利用BLIND OOB XXE漏洞獲取文件系統訪問許可權的測試
IIS配置網站訪問許可權和安全如何部署?
對不起,您沒有空間訪問許可權
MySQL8.0設置遠程訪問許可權
配置指南:SAP ERP HCM中如何控制員工對象和員工數據的訪問許可權?
阿里雲回應「源代碼泄露」:用戶可手動改訪問許可權選項