C 類成員之屬性

2021-10-05 04:48:15 字數 1082 閱讀 5752

class phonecustomer

set

}}

示例中變數名為 _firstname 的字段改為私有, firstname屬性包含 get 和 set 訪問器, 來檢索和設定支援欄位的值。

get訪問器不帶任何引數, 且必須返回屬性宣告的型別。 也不應為 set 訪問器指定任何顯式引數, 但編譯器假定它帶乙個引數,其型別也與屬性相同, 並表示為 value。

如果屬性的set和get訪問器中沒有任何邏輯, 就可以使用自動實現的屬性。 

public int age
不需要宣告私有字段。 編譯器會自動建立它。 使用自動實現的屬性, 就不能直接訪問字段,因為不知道編譯器生成的名稱。

使用自動實現的屬性, 就不能再屬性設定中驗證屬性的有效性。 所以上面的例子中,不能檢查是否設定了無效的年齡。

自動實現的屬性還可以使用屬性初始化器來初始化:

public int age  = 29;
c# 允許給屬性的 get 和 set 訪問器設定不同的訪問修飾符,所以屬性可以使共有的 get訪問器 和私有的 get訪問器,或受保護的。在下面的**示例中,注意 set訪問器有乙個私有訪問修飾符, 而 get 訪問器沒有任何訪問修飾符。這表示get訪問器具有屬性的訪問級別。 在 get 和 set訪問器中,必須有乙個具備屬性的訪問級別。如果get訪問器的訪問級別是 protected, 就會產生乙個編譯錯誤, 因為這會使兩個訪問器級別都不是屬性。

public string name

private get

}

通過自動實現的屬性, 也可以設定不同的訪問級別:

public int age
注意:也可以定義只有  get  或 set 訪問器的屬性。 在建立只有 set 訪問器的屬性之前,最好建立乙個方法來代替。可以將只有 get 訪問器的屬性用於唯讀訪問。

類的成員之屬性

屬性的分類 物件屬性 例項變數 例項屬性 vs 類屬性 類變數 public class person public static void main string args 上述 在執行的時候,輸出的結果為 the person one person public class person pub...

C 之static類成員,static類成員函式

0.static修飾類中成員,表示類的共享資料 1.static類成員 在c primer裡面說過,static類成員不像普通的類資料成員,static類資料成員獨立於一切類物件處在。static類資料成員是與類關聯的,但不與該類定義的物件有任何關係。這句話什麼意思?就是static不會想普通類資料...

類的屬性成員

假定學校要統計學生的資訊,包括學生姓名,學號和所在系等。要求把這些學生資訊設定成學生類的屬性,並通過屬性訪問函式來設定和讀取這些資訊 using system using system.collections.generic using system.linq using system.text n...