当前位置:  开发笔记 > 编程语言 > 正文

c#使用基类的setter或getter

如何解决《c#使用基类的setter或getter》经验,为你挑选了1个好方法。

是否建议将基类的成员变量设置为protected,以便子类可以访问这些变量?或者是否更建议将成员变量设置为private并让子类通过getter和setter获取或设置变量?

如果建议使用getter和setter方法,何时使用受保护的变量?



1> Jon Skeet..:

这是非常相似到这个问题,是否要通过属性或直接访问同一个类中获取信息.这也许值得阅读所有这些答案.

就个人而言,我不喜欢任何字段是非私有的,偶尔会出现具有不可变值的静态只读字段(无论是否为const).对我而言,属性只是提供更好的封装程度.数据的存储方式是实现决策,而不是API决策(与属性不同).为什么类Foo派生于Bar类关心类Bar的实现

简而言之,我总是寻找属性,除了一次性测试代码之外我不会使用受保护的变量.

通过在C#3.0中自动实现的属性,将字段转换为属性比以往更容易.没有理由去做.

推荐阅读
携手相约幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有