C#中屬性和成員變量的區(qū)別說明
一個(gè)類,有時(shí)候搞不清楚到底用成員變量還是屬性。
如:
成員變量
public string Name;
或者用屬性
private string name
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}
屬性與成員變量類似,它們都提供數(shù)據(jù)存儲(chǔ),但屬性的功能遠(yuǎn)比成員變量強(qiáng)大。屬性由特殊方法(Get 和 Set 訪問器)訪問。Get 和 Set 訪問器允許在設(shè)置或檢索屬性之后驗(yàn)證屬性值、執(zhí)行其他代碼或執(zhí)行其他任務(wù)
例如
成員變量這樣寫
public readonly string Name;
那還是可以是只讀了
private string name
public string Name
{
get
{
return name;
}
}
面向?qū)ο蟮木幊谭椒ㄊ且橄蟆⒎庋b;在類中,定義的變量是正對類本身而言,我們把它們叫做域。它可以為public ,private等;屬性是針對外部看到的類的特性,是類展示給外部使用者的特性。前面我們講到了域可以為public,但這樣把域申明為public將 不利于類的封裝,因?yàn)橥獠渴褂谜呖梢詫︻愡M(jìn)行直接修改。所以我們就可以用到屬性,我們只是公開它們的屬性,至于如何對其進(jìn)行賦值(set)如何進(jìn)行取值 (get)都已經(jīng)進(jìn)行了封裝,對于類外部是不可見的。對于外部使用者來說只能夠使用它,不能控制它,如何控制操作是由類自身決定的。你理解了嗎?
相關(guān)文章
關(guān)于C#.net winform程序驗(yàn)證moss的集成身份認(rèn)證實(shí)例
因?yàn)榫W(wǎng)站使用的是windows集成認(rèn)證,所以遇到了權(quán)限問題,需要輸入密碼。使操作和用戶體驗(yàn)非常不方便,研究了好久沒有找到好的方法,最后終于讓我踏破鐵鞋總結(jié)出了下面的方法2013-03-03
在C#中處理時(shí)間戳和時(shí)區(qū)的解決方法
處理時(shí)間戳和不同的時(shí)區(qū)可能是軟件開發(fā)中的一個(gè)棘手問題,尤其是當(dāng)系統(tǒng)不確定給定的日期時(shí)間是UTC還是本地時(shí)間時(shí),通常會(huì)遇到與時(shí)間轉(zhuǎn)換相關(guān)的問題,在這篇文章中,我將分享我們?nèi)绾卧贑#中處理時(shí)間戳和時(shí)區(qū),需要的朋友可以參考下2024-06-06
C#判斷一個(gè)字符串是否是數(shù)字或者含有某個(gè)數(shù)字的方法
這篇文章主要介紹了C#判斷一個(gè)字符串是否是數(shù)字或者含有某個(gè)數(shù)字的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-06-06
簡單聊聊C#字符串構(gòu)建利器StringBuilder

