[英]OOP - Who can access to public, private, protected variable?
我是OOP的新手。 看下面的偽代碼:
Class Test{
public String a;
protected String b;
private String c;
public void aa(){}
protected void bb(){}
private void cc(){}
Class Test2{
private void dd(){}
}
}
Class Test3 extends Test{
private void ee(){}
}
Class Test4{
private void ff(){}
}
a
, b
和c
可以訪問aa()
, bb()
和cc()
嗎? a
, b
和c
可以訪問類Test2
和dd()
嗎? 是否只有a
和b
可以訪問Test3
和ee()
? 是否只有a
可以訪問Test4
和ff()
?
對於第一個問題
“ aa()是否可以訪問Test類的a,b,c” :是的,它可以訪問其外部類的成員。 Test2是一個內部類,並且內部類與其封閉類的實例相關聯,並且可以直接訪問該對象的方法和字段
第二個問題
“是的,只有a和b可以訪問Test3類” :是的,a,b可以在Test3類中進行訪問。 子類可以訪問其基類的Public和Protected成員。
對於第三
“是真的,只有a可以訪問Test4類嗎?” :是的,如果您創建Test類的對象並使用dot(。)運算符進行訪問,則只能在Test4類中訪問“ a”。
私有-僅受保護的類
受保護的人
您在說什么,在Java中稱為訪問修飾符 。 您已經提到了其中的三個,但是總共有四種類型的訪問修飾符:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.