有志者、事竟成,破釜沉舟,百百二秦关终属楚;苦心人、天不负,卧薪尝胆,三千越甲可吞吴。

拂晓犬吠

学习中遇到困难是很正常的事情,不要苦恼,不要气馁,恰恰相反,应该兴奋,因为又学到知识了,需要不断提高自己应对问题和解决问题的能力和信心。

第六章类(六)属性2命名规范

  只记录回忆点

  自动实现的属性

  从C#3.0起属性语法有了简化版本。

  在属性中声明支持字段,并用取值方法和赋值方法来获取和设置该字段。由于这是十分常见的设计,而且代码比较琐碎;

  所以,现在允许在声明属性时不添加取值或赋值方法,也不声明任何支持字段。

  一切都自动实现。简化了写法,也使代码更易读。

  此外,如未来需添加一些额外的代码,比如要在赋值方法中进行验证,那么虽然要修改现在的属性声明来包含实现,但调用它们的代码不必进行任何修改。

  属性和字段的设计规范

  一般原则是方法代表行动,而属性代表数据。

  避免从属性取值方法抛出异常;

  要在属性抛出异常时保留原始属性值;

  如果不需要额外逻辑,要优先使用自动实现的属性,而不是属性加简单支持字段;

  无论私有字段使用哪一种命名方案,属性都要使用PascalCase大小写规范;

  考虑为支持字段和属性使用相同的大小写风格,为支持字段附加“-”前缀;

  如果有意义的话,要为Boolean属性附加“Is”“Can”或“Has”前缀;

  不要声明public或protected实例字段;

posted @ 2019-12-04 10:23  ID拂晓犬吠  阅读(406)  评论(0编辑  收藏  举报