[英]Can't enforce the use of base constructor of an abstract class into derived class
[英]Can you make the constructor of base class in derived class?
是否可以在派生类中使基类的构造函数成为可能?
public class A
{
// some stuff
}
public class B:A
{
public A()
{ }
public B() { }
}
不,你不能那样做,这是不明智的。 您可以使用base
关键字在子类中调用基类构造函数。
public class B : A
{
public B()
: base() //base class default constructor call.
{ }
}
不,你不能那样做。 一个类的构造函数必须在其自己的类中。
但是您可以通过new A()
在B
调用A
的构造函数
你可以这样做:
public abstract class A
{
public A()
{
ExecuteConstructor();
}
protected abstract void ExecuteConstructor();
}
public class B : A
{
public B() { }
protected override void ExecuteConstructor()
{
// implementation of your constructor to run in A
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.