在C#中,可以使用public
、private
、protected
或internal
關鍵字來定義屬性的訪問級別。以下是一個簡單的示例,展示了如何在C#類中定義屬性:
public class Person
{
// 定義一個私有字段
private string _name;
// 使用自動實現的屬性,編譯器會自動生成一個私有的后備字段
public string Name
{
get { return _name; }
set { _name = value; }
}
}
在這個例子中,我們定義了一個名為Person
的類,其中包含一個私有字段_name
和一個公共屬性Name
。Name
屬性使用自動實現的屬性語法,這意味著編譯器會自動生成一個私有的后備字段來存儲屬性值。這樣,我們就可以在不直接暴露字段的情況下,通過屬性來訪問和修改字段的值。
還可以手動實現屬性的getter和setter方法,如下所示:
public class Person
{
private string _name;
public string Name
{
get { return _name; }
set
{
if (value != null && value.Length > 100)
{
throw new ArgumentException("Name cannot be longer than 100 characters.");
}
_name = value;
}
}
}
在這個例子中,我們手動實現了Name
屬性的getter和setter方法。在setter方法中,我們添加了一個檢查,以確保屬性值的長度不超過100個字符。如果屬性值不符合要求,將拋出一個ArgumentException
異常。