亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關于訪問修飾符的一點疑問

關于訪問修飾符的一點疑問

牧羊人nacy 2018-11-20 05:02:23
public  class Class1    {        protected int bb;        public int cc;    }    public class class2:Class1    {        public void foo()       {            //可得到base.bb,base.cc            Class1 c=new Class1();            //只能得到c.cc,不能訪問受保護成員?         }    } 為什么在派生類中,只能通過base才能訪問到基類的protected成員,直接創建基類對象就訪問不到了?
查看完整描述

2 回答

?
呼喚遠方

TA貢獻1856條經驗 獲得超11個贊

1. protected 訪問控制符能被用于方法和成員變量。 
2. 聲明為protected的方法和成員變量能被同一個包里的所有類所訪問,就像默認修飾符package一樣。 
3. 能被該類的子類所訪問,子類可以和父類不在一個包中。 
這樣,當你想讓一個類中的某個方法或成員變量在包中都可見,而且其子類也能訪問(子類有可能和父類不在同一個包中)但又不想讓所有類都可以訪問該類時,就可以用protected修飾符。 
可訪問性: 
public > protected > package >private

查看完整回答
反對 回復 2018-11-21
?
12345678_0001

TA貢獻1802條經驗 獲得超5個贊

標識為Protected的類A中的成員,類A和從類A派生的類的方法可以訪問

如果是類A的對象和從類A派生的對象是不能訪問的

參考:Programming C#


查看完整回答
反對 回復 2018-11-21
  • 2 回答
  • 0 關注
  • 480 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號