在抽象类中有一个构造函数是否很好?在抽象类中有一个构造函数很好吗?
创建抽象类的构造函数是一种很好的编程习惯吗?由于抽象类不能被初始化,所以它们的子类被初始化。
以下是我的班级结构。
public abstract class Scheduler
{
private Storyboard timer;
protected Scheduler()
{
// initialize the timer here.
timer = new Storyboard();
this.PollInterval = 60;
}
}
public class TaskScheduler : Scheduler
{
public TaskScheduler()
: base()
{
}
}
嗯,很好的例子。 – 2010-11-07 08:44:02
@JonSkeet对不起2010年的帖子,但OP在其基础构造函数中没有参数,值得一提的是,如果基类中唯一的ctor是默认类,那么在派生类中调用':base()'是多余的(因为无论如何它都会被调用)。我担心“隐藏”ctor参数的需要,比如说基类需要一个'IMagicWand',派生类无法知道这个需求,直到编译器抱怨为止 - *这是我的问题抽象类中受保护的构造函数......还是我过度思考这个问题? – 2013-04-13 17:25:59