抽象类和只有受保护构造函数的类之间有什么区别?它们看起来非常相似,因为你都不能实例化它们。
编辑:
如果基类有一个受保护的构造函数,如何在派生类中创建一个实例?例如:
public class ProtectedConstructor
{
protected ProtectedConstructor()
{
}
public static ProtectedConstructor GetInstance()
{
return new ProtectedConstructor(); // this is fine
}
}
public class DerivedClass : ProtectedConstructor
{
public void createInstance()
{
ProtectedConstructor p = new ProtectedConstructor(); // doesn't compile
}
public static ProtectedConstructor getInstance()
{
return new ProtectedConstructor(); // doesn't compile
}
}