日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

访问修饰符的个人理解-private与protected

發(fā)布時(shí)間:2025/7/14 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 访问修饰符的个人理解-private与protected 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

??????????????????????????? 一:private
???????????????????????????
private --只有在聲明它的類(lèi)或結(jié)構(gòu)中訪問(wèn).
例:
public class A
{
? private string name="xu";
? int age="23";? //默認(rèn)為private
}
這時(shí)就不能在A的外部直接讀取name和age的值,只有通過(guò)A類(lèi)中的方法或?qū)傩酝瓿?。完整示?#xff1a;
public class A
{
? private string name="xu";
? int age="23";? //默認(rèn)為private
? public string GetName()? //這時(shí)的屬性或方法就不能再聲明為private 或protected了,這樣會(huì)導(dǎo)致在外部同樣不能訪問(wèn)。
? {
? return name;
? }
? public int Age
? {
? get { retunr age;}
? }
}
public class B
{
?? public B()
?? {
???? A a1=new A();
???? //string x=a1.name;? 這樣就不能訪問(wèn)A的name了
???? string x=a1.GetName() ; //通過(guò)方法來(lái)訪問(wèn)。
???? //int age=a1.age;??? can not do this;
???? int age=a1.Age; //通過(guò)屬性來(lái)訪問(wèn)
?? }
}
?????????????????????????????????? 二 protected
protected 關(guān)鍵字是一個(gè)成員訪問(wèn)修飾符。受保護(hù)成員在它的類(lèi)中可訪問(wèn)并且可由派生類(lèi)訪問(wèn)。
個(gè)人理解為:受保護(hù)成員只能在聲明它的類(lèi)中訪問(wèn)(如同private一樣)或者通過(guò)它的派生類(lèi)來(lái)訪問(wèn)。
如下例:
using System;
class A
{
??? protected int x = 123;
??? public int X{get return x;}
}

class B : A
{
??? static void Main()
??? {
??????? A a = new A();
??????? B b = new B();

??????? // Error CS1540, because x can only be accessed by
??????? // classes derived from A.
??????? // a.x = 10;
??????? // a.X;----這樣就可以讀取
???????
??????? // OK, because this class derives from A.
??????? b.x = 10;??
??? }
}
分析:
一:當(dāng)使用a.x=10時(shí),由于A是基類(lèi),因此其下的private x不能外部訪問(wèn),此時(shí)用a.x=10就會(huì)報(bào)錯(cuò)。
二:為什么用b.x=10就可以呢,這也是外部呀? ^_^:因此,此時(shí),類(lèi)B是類(lèi)A的派生類(lèi),protected 修飾的如果在派生類(lèi)中就可以訪問(wèn)。
總結(jié):protected類(lèi)型的,在外部而非派生類(lèi)中訪問(wèn)時(shí)除非通過(guò)方法或?qū)傩?#xff0c;否則不可以訪問(wèn)。而在派生類(lèi)中就可以訪問(wèn)。
????? private類(lèi)型的,除非通過(guò)方法或?qū)傩?#xff0c;否則不可以在外部訪問(wèn)。
?????
?????
????? 屬于? 默認(rèn)的成員可訪問(wèn)性? 該成員允許的聲明的可訪問(wèn)性?
enum? public?? 無(wú)
?
class? private? < public protected internal private protected internal >
?
interface? public? 無(wú)
?
struct? private? <public internal private >
?

轉(zhuǎn)載于:https://www.cnblogs.com/McJeremy/archive/2008/05/16/1200843.html

總結(jié)

以上是生活随笔為你收集整理的访问修饰符的个人理解-private与protected的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。