这是C#中的属性 public string UserName { get { return this._username; } set { this._username = value; } } 通俗来讲..get是获取值 set是设置值 比如这句:get { return this._username; } 如果调用这个get方法 就能获得方法return的 this._username(返回的值) 调用方法:Console.Write(对象.UserName);(输出该属性的值) 比如这句:set { this._username = value; } 如果调用这个set方法 就可以重新设置username的值 value就是你新设置的值 调用方法:对象.UserName="新值";(为该属性附新值) 个人理解: 1.在封装数据库字段的时候非常有用,相信大家都这么用。 2.你可以吧UserName当成一个这个类的一个属性,这个属性由字段_username的值确定,也可能不是_username,而是经过_username变化的。你可以在GET、SET中作相应的处理。比如这样: public string UserName { get { if(string.IsNullOrEmpty(_username)) return ERRORCODE; return this._username; } set { if(string.IsNullOrEmpty(_username)) this._username = defaultusername; this._username = value; } } 所以,封装以后,比没有封装更加方便。如果你要做条件判断、转换等 操作,在GET、SET你做会更方便。而且还保护了原字段。 假设_username是数据库字段,如果程序员不想公开这个属性,而是做一些变换,这样数据安全性更高。 方便更改需求 如果说有人让你把所有的StrName都加一个"_"的前缀 那么如果public string strName;,你用了100个地方,就要改100个地方 但是使用 属性,你只要改一处就好 private string strName; public string StrName { get { return "_"+strName; } set { strName = value; } }
c# 使用get set方法
最新推荐文章于 2024-04-09 21:20:54 发布