在C#中,get
和set
是屬性(Property)的訪問修飾符。它們用于控制對類內部成員(如字段)的訪問。get
方法用于獲取屬性值,而set
方法用于設置屬性值。這種機制提供了一種靈活的封裝方式,可以在獲取和設置屬性值時執行自定義邏輯,例如數據驗證、通知等。
以下是一個簡單的示例,展示了如何使用get
和set
訪問修飾符創建一個名為Age
的屬性:
public class Person
{
private int _age;
public int Age
{
get { return _age; }
set
{
if (value >= 0 && value <= 150)
{
_age = value;
}
else
{
throw new ArgumentOutOfRangeException(nameof(value), "年齡必須在0到150之間");
}
}
}
}
在這個示例中,_age
是一個私有字段,用于存儲Person
對象的年齡。Age
屬性使用get
方法返回_age
的值,并使用set
方法設置_age
的值。在set
方法中,我們檢查傳入的值是否在有效范圍內,如果不在范圍內,則拋出一個ArgumentOutOfRangeException
異常。這樣,我們可以確保Person
對象的年齡始終在合理范圍內。