C#-如何为父类仅具有静态构造函数的继承类创建构造函数

时间:2018-11-11 17:47:05

标签: c# inheritance constructor static

例如,假设我想创建一个继承System.Diagnostics.StopWatch的类,并且在此示例中,假装System.Diagnostics.Stopwatch.StartNew()是该类的唯一公共构造函数(我知道不是,但我正在尝试继承不同的类(在这种情况下):

public class Example : System.Diagnostics.Stopwatch
{
    public Example()
    {
        // ... return System.Diagnostics.Stopwatch.StartNew();
    }
}

我知道有明显的解决方法,但是只是想知道在C#中是否可行

1 个答案:

答案 0 :(得分:4)

基本上在三种情况下您不能从类继承:

  1. 预期的父类被声明为密封的,禁止从其继承。
  2. 预期的父类没有可访问的构造函数。
  3. 预期的父类是静态类。

如果您处于这三种情况之一,则将无法从该类继承而来,无论是简单还是简单,都不要寻找可用的解决方法,因为没有。