{ get; set; } 的原理

📅 2026/7/25 0:58:25 👁️ 阅读次数 📝 编程学习
{ get; set; } 的原理
public class Person
{
private string _name; // 私有的,外面碰不到// 写入方法
public void SetName(string value)
{
if (!string.IsNullOrEmpty(value)) // 加入校验!
_name = value;
}// 读取方法
public string GetName()
{
return _name;
}
}
// 调用时: person.SetName("张三"); string n = person.GetName();

 

进化

public class Person
{
private string _name;// 这就是属性!把 Get 和 Set 包在一起
public string Name
{
get { return _name; } // 读取时触发
set { _name = value; } // 赋值时触发,value就是传入的值
}
}
// 调用时: person.Name = "张三"; (看起来像在操作变量,但实际上走了 set 逻辑)

 

 

public class Person
{// 编译器会在后台偷偷帮你生成一个隐藏的私有字段// 你只需要告诉它:允许读(get),允许写(set)public string Name { get; set; } 
}