C# 字段,属性和属性封装字段
最近一直在学习,一直想把学习过程记录下来,于是申请了博客,希望能记录自己学习的足迹,也能给他人带来方便。话不多说,直接开始了。
C#类成员包括 字段,属性和方法。对于日常对于一个类我们添加成员时会有几种方法。
如对于一个Person 类,我们对于其中一个成员 性别(gender )进行定义,可以写成
1,public string Gender;
2,public string Gender{get;set;};
3,private string _gender;
public string Gender
{
get { return _gender; }
set { _gender= value; }
}
第一种我们就不怎么讨论了,由于其开放的属性,导致字段直接被访问,可以任意的赋值和修改。性别 只有男女之分,假如我给其 赋值 ‘男女’ 也死可以的。
第二种确切说第三种的简写,应该是第三种可以对主动方法进行限制吧,安全性方面我也不太清楚是否一样。希望能有大神解释下。
private string _gender;
public string Gender
{
get { return “Miss” + _gender; }
private set { _gender= value; } // 这个属性就只能读取,而不能写入了
}