我有一个相当冗长的构造函数,它执行各种初始化工作,因此我想将一些工作提取到一些函数中。这让我想知道是否应该将这些函数设置为实例方法或静态方法。我理解从构造函数调用虚函数的风险,但我也认为在尚未完全实例化的对象上调用实例方法是不正确的。这肯定是个矛盾。
我很想听听大家对这个问题的看法。我还发现,通过使用静态方法返回初始化变量,我可以使成员目标只读。这是我情境的一个简化示例。
我很想听听大家对这个问题的看法。我还发现,通过使用静态方法返回初始化变量,我可以使成员目标只读。这是我情境的一个简化示例。
public class A
{
private readonly string _foo;
public A()
{
_foo = InitialiseFoo();
}
private static InitialiseFoo()
{
// Do stuff
return new string ("foo");
}
}