可能是重复问题:
最佳实践:在构造函数中初始化类字段还是在声明时?
我正在使用C#,但这可能也适用于Java(或任何允许此行为的其他语言)...
哪种方式更可取/最佳实践?假设我始终需要_memberVar
1.
class MyClass
{
private Dictionary<int, string> _memberVar = new Dictionary<int, string>();
public MyClass() {}
}
- 或 -
2.
class MyClass
{
private Dictionary<int, string> _memberVar = null
public MyClass()
{
_memberVar = new Dictionary<int, string>();
}
}
现在假设有超过10个构造函数...所以我不想在所有这些构造函数中都加入
_memberVar = new Dictionary<int, string>();
。第一种方法有什么问题吗?谢谢。编辑: 我意识到我可以链接这些构造函数,但这是一个相当复杂的类...一些构造函数调用基类,一些已经调用了其他构造函数等等。