在C#中,可以使用屬性(property)的get和set訪問器來實現一些高級的功能,例如數據驗證、計算屬性和事件通知等。下面是一些get和set訪問器的高級應用示例:
private int _age;
public int Age
{
get { return _age; }
set
{
if (value >= 0 && value <= 120)
{
_age = value;
}
else
{
throw new ArgumentOutOfRangeException("年齡必須在0到120之間");
}
}
}
private int _width;
private int _height;
public int Area
{
get { return _width * _height; }
}
private string _name;
public string Name
{
get { return _name; }
set
{
_name = value;
OnPropertyChanged(nameof(Name));
}
}
public event EventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
以上是一些get和set訪問器的高級應用示例,通過這些技巧可以實現更加靈活和功能豐富的屬性操作。