屬性命名采用Pascal命名方式,每個單詞的首字母大寫。訪問方式與訪問類的公共字段類似。
/// <summary> /// 字段 /// </summary> private int age; /// <summary> /// 屬性 /// </summary> public int Age { //get訪問器不帶任何參數,且必須返回屬性聲明的類型 get { return age; } //set訪問器不顯示指定任何參數,但編譯器假定其帶一個參數,類型與屬性相同,并表示為value set { age = value; } }
1.只讀/只寫屬性
在屬性定義中省略set訪問器,可以創建只讀屬性;省略get訪問器,可以創建只寫屬性。
2.屬性的訪問修飾符
C#允許給屬性的get和set訪問器設置不同的訪問修飾符。在get和set訪問器中,必須有一個具備屬性的訪問級別。若set訪問器有一個私有訪問修飾符,而get訪問器沒有任何訪問修飾符,則表示get訪問器具有屬性的訪問級別。
/// <summary> /// 字段 /// </summary> private int age; /// <summary> /// 屬性 /// </summary> public int Age { //get訪問器不帶任何參數,且必須返回屬性聲明的類型 get { return age; } //set訪問器不顯示指定任何參數,但編譯器假定其帶一個參數,類型與屬性相同,并表示為value private set { age = value; } }
3.自動屬性
自動屬性兩個訪問器必須同時存在,訪問器的訪問級別可以不同
public string Name { get; set; } public string Sex { get; private set; }
參考書籍:《C#高級編程(第9版)》
浙公網安備 33010602011771號