使用属性,避免将数据成员直接暴露给外界
学习研究.NET的早期,经常碰到一些学习C#/.NET的朋友问,要属性这种华而不实的东西做什么?后来做项目时也时常接到team里的人的抱怨反馈,为什么不直接放一个public字段?如:
class Card{ public string Name;}
而非要做一个private字段+public属性?
class Card{ private string name; public string Name { get { return this.name;} set { this.name=value;} }}
我记得在早期的一个项目里,team中的一个朋友甚至厌烦了写private字段+public属性,尤其是碰到一大堆臃肿的data object class的时候,索性自己写了一个小工具,来提供一个类的字段名和类型,然后自动为该类生成相应的private字段+public属性。
我在编程的时候是个彻底的实...[ 查看全文 ]