我有一个BasePage类,所有其他页面派生自:
public class BasePage
这个BasePage有一个构造函数,其中包含必须始终运行的代码:
public BasePage() { // Important code here }
我想强制派生类调用基础构造函数,如下所示:
public MyPage : base() { // Page specific code here }
我该如何强制执行此操作(最好是在编译时)?
始终会在某个时刻调用基础构造函数.如果你调用this(...)
而不是base(...)
那个调用同一个类中的另一个构造函数 - 它还必须调用另一个兄弟构造函数或父构造函数.迟早你总会得到一个构造函数,它可以base(...)
显式地或隐式地调用基类的无参数构造函数.
有关构造函数链接的更多信息,请参阅此文章,包括各个位的执行点(例如变量初始值设定项).
如果不调用任何其他显式接受参数的基类构造函数,则自动运行不带参数的基类构造函数.