属性之突破思维惯式

伟大的我曾经说过:

人都存在思维惯式的问题,直到有一天,你发现有创新精神的人竟然把你习以为常的东西,玩出了花!


一开始,以为属性只是c#为了防止外部修改类的成员变量而搞出来的一种措施,所以每次写属性都直接用快捷键ctrl+r,e直接生成了,后来才发现:

只要不在类中修改成员变量的值,可以加进去你想要的逻辑,来玩各种“把戏”。

属性的底线

如果在属性中修改了成员变量的值,出错时将很难发现,因为访问成员变量是通过实例直接'.'出来的,所以你只能发现访问一次值就改变一次,找不到具体出错的位置,将会造成很严重的影响。所以不能修改成员变量是属性的“底线”!

外部的接口

软件的一个原则是,不管内部如何改变,开放给外部调用的接口尽量不要改变,不然会造成版本不兼容的很多问题。但如果类的数据结构改变了怎么办呢?相信你已经猜到了,只要在属性中对改变的成员变量还原成之前版本调用时的值就OK了!


希望这篇文章能够让你对属性有一种新的认识!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容