我想为我的网站创建一个包含很多私有(private)变量的类。
我认为有一种解决方案,不要为每个变量编写所有的getter和setter方法,例如
private int confirmed { get; set; }
这是正确的方法吗?然后,如何从类(class)外部访问此值?
我尝试了
.confirmed
,但收到错误消息说它是私有(private)的(据我了解)但更令人惊讶的是,
.getConfirmed()
或getconfirmed()
也不起作用。我认为
{ get; set; }
会隐式创建那些方法。有人可以帮我澄清这个问题吗?
最佳答案
您可以将您的属性(property)声明为公共(public),然后将 getter 或 setter 分别标记为私有(private):
public int confirmed { get; private set; }
这样,您可以在定义的类之外访问
confirmed
:Console.WriteLine(myClass.confirmed); // This is OK
myClass.confirmed = "Nothing"; // Can't do this
然后唯一可以设置
confirmed
值的人就是MyClass:public class MyClass {
public int confirmed { get; private set; }
public MyClass() {
this.confirmed = "This"; // This is fine as we have private access
}
}
关于c# - 如何使用{get;访问私有(private)变量组; },我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21312870/