我遇到了一个我正在维护的C#应用程序的问题。我看到一些我不明白的东西,所以我想要求澄清一下。它可能与我遇到的问题有关,也可能没有关系。
class C2iModel
{
public C2iModel() { //blah }
}
class EplrsModel : C2iModel
{
public EplrsModel() : base() { //blah }
}
我的理解是,当调用子构造函数时,会自动调用父构造函数。
我的问题是,在EplrsModel
构造函数中是否存在对基础构造函数的显式调用会有什么不同吗?
答案 0 :(得分:2)
是的,那段代码是多余的。
答案 1 :(得分:2)
在您的示例中,调用基础构造函数是多余的。您只需要在传入参数时为构造函数明确指定。例如:
class Base {
public Base(string type) { ... }
}
class Extend : Base {
public Extend(string type, string name) : base(type) { ... }
}