使用基础构造函数

时间:2014-02-01 22:02:04

标签: c# constructor

我遇到了一个我正在维护的C#应用​​程序的问题。我看到一些我不明白的东西,所以我想要求澄清一下。它可能与我遇到的问题有关,也可能没有关系。

class C2iModel
{
    public C2iModel() { //blah }
}

class EplrsModel : C2iModel
{
    public EplrsModel() : base() { //blah }
}

我的理解是,当调用子构造函数时,会自动调用父构造函数。

我的问题是,在EplrsModel构造函数中是否存在对基础构造函数的显式调用会有什么不同吗?

2 个答案:

答案 0 :(得分:2)

是的,那段代码是多余的。

答案 1 :(得分:2)

在您的示例中,调用基础构造函数是多余的。您只需要在传入参数时为构造函数明确指定。例如:

class Base {

  public Base(string type) { ... }
}

class Extend : Base {

  public Extend(string type, string name) : base(type) { ... }

}