在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
对象的年龄始终在合理范围内。