C#中屬性和成員變量的區(qū)別說明
一個類,有時候搞不清楚到底用成員變量還是屬性。
如:
成員變量
public string Name;
或者用屬性
private string name
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}
屬性與成員變量類似,它們都提供數(shù)據(jù)存儲,但屬性的功能遠比成員變量強大。屬性由特殊方法(Get 和 Set 訪問器)訪問。Get 和 Set 訪問器允許在設置或檢索屬性之后驗證屬性值、執(zhí)行其他代碼或執(zhí)行其他任務
例如
成員變量這樣寫
public readonly string Name;
那還是可以是只讀了
private string name
public string Name
{
get
{
return name;
}
}
面向對象的編程方法是要抽象、封裝;在類中,定義的變量是正對類本身而言,我們把它們叫做域。它可以為public ,private等;屬性是針對外部看到的類的特性,是類展示給外部使用者的特性。前面我們講到了域可以為public,但這樣把域申明為public將 不利于類的封裝,因為外部使用者可以對類進行直接修改。所以我們就可以用到屬性,我們只是公開它們的屬性,至于如何對其進行賦值(set)如何進行取值 (get)都已經(jīng)進行了封裝,對于類外部是不可見的。對于外部使用者來說只能夠使用它,不能控制它,如何控制操作是由類自身決定的。你理解了嗎?
相關文章
關于C#.net winform程序驗證moss的集成身份認證實例
因為網(wǎng)站使用的是windows集成認證,所以遇到了權限問題,需要輸入密碼。使操作和用戶體驗非常不方便,研究了好久沒有找到好的方法,最后終于讓我踏破鐵鞋總結出了下面的方法2013-03-03
C#判斷一個字符串是否是數(shù)字或者含有某個數(shù)字的方法
這篇文章主要介紹了C#判斷一個字符串是否是數(shù)字或者含有某個數(shù)字的方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2018-06-06

