如何使用set accessor创建属性,只能在所有者类之外访问

时间:2013-10-30 13:02:59

标签: c# .net properties

我需要一个属性,其中set只能从构造函数或所有者类外部访问(它不能在类方法中更改)。与私有修饰符相反的东西。有什么建议吗?

2 个答案:

答案 0 :(得分:1)

这有点奇怪。因为你是创建类的人...让它公开,只是不要从类内部触摸属性(如果你确保在调用当前类的方法时编写单元测试以测试不变量,这可以成立) 。但是......如果你真的想要这样的东西,我想你需要将属性包装在其他类中,这些类只能通过当前类的setter方法访问。或类似的东西。

答案 1 :(得分:0)

如果你有一个你的类需要依赖但不能改变的变量,它似乎属于其他类或结构,你的类只会引用它。