到目前为止,我见过的最短代码声明了一个只能从我见过的类中设置的属性:
public T Property {get; private set;}
但是如果我想用一个起始值(这不是该类型的默认值)声明它,我怎么能这样做?
其实我这样做:
public T Property {get; private set;}
private void Initialize() {Property = Value; }
另一种选择是:
private T _Property = Value;
public property {get {return _Property;}}
但是我想知道我是否只能用一个代码行编写它,因为我将编写许多这些属性,并且我不希望每个属性都有重复的行。
答案 0 :(得分:4)
不。自动属性始终默认为默认值。
最好的办法是在构造函数中设置它们,否则就不要使用自动属性。
public T Property {get; private set;}
public MyClass() {
Property = Value;
}