孩子和父母c#中相同的构造函数

时间:2014-10-02 09:47:31

标签: c# generics inheritance constructor

我有一个父母和几个子课程。每个子类的构造函数都不应该做任何特殊的操作,但仍然需要将参数传递给父构造函数。有没有办法在不触及孩子的情况下达到同样的目的(不给每个孩子添加构造函数)?我有13个子类,它应该使用与父类相同的构造函数。 (在我的例子中,父类是抽象的)

public class A
{ 
    private int _number;
    public A(int number)
    {
        this._number = number;
    }
}

public class B:A
{
    public B(int number):base(number)
    {
          //Nothing here
    }
    ...
}

也许我可以在子类中使用默认构造函数,并在父类中创建一个静态泛型方法,该方法采用相同的参数并返回一个新子项:

public static T getChild<T>(int number) where T:A, new()
{
    T child = new T();
    T._number = number;
    return child;

}

但我更喜欢用构造函数创建对象。还有其他可能性吗?

0 个答案:

没有答案