包含继承类中的参数的最佳实践构造函数

时间:2015-02-06 17:20:58

标签: c# inheritance

我遵循简单的类设计,其中myObject是为BaseClass导入的。

public abstract class BaseClass
{
    public BaseClass(myObject parameter)
    {
        // ...
    }   
}

public class ChildClass : BaseClass
{

}

我现在的问题是,我希望通过继承公共BaseClass使我的程序可扩展。所以你可以创建一个构造函数

public ChildClass() :base(new myObject()){...}

会导致失败。是否有可能使用自己的构造函数来阻止继承的类?我实际上想避免使用ChildClass的构造函数。这可能吗?然后我可以使用工厂并提供Initialize方法。或者这是不可能的事情,我必须注意并检查我的代码=

1 个答案:

答案 0 :(得分:3)

类对自己的构造函数负全部责任。它们没有被继承,每个类必须有一个构造函数。所以不,你无法控制"控制"基类可以或不具备的构造函数。