如何使用私有setter初始化对象?

时间:2016-08-12 23:53:49

标签: c#

当我使用以下内容时:

static public string myString { get; private set; }

如何同时设置值?问题是我的类是静态的,所以在它的声明中,我需要确保它有一个值。

通常我将它与非静态类一起使用,所以我在类构造函数中设置了值。

3 个答案:

答案 0 :(得分:5)

这仅在C#6.0中有效。 C#6.0添加了这种语法:

static public string myString { get; private set; } = "Hello";

除非您计划稍后在程序中设置myString,否则请考虑将该属性设置为只读(这是C#6.0的另一个新功能):

static public string myString { get; } = "Hello";

答案 1 :(得分:4)

使用静态构造函数(MSDN)初始化属性。

答案 2 :(得分:2)

另一种选择:

static public string myString { get; private set; } = "default value";