一个派生类有多个基类,c#中的继承

本文关键字:基类 继承 一个 派生 | 更新日期: 2023-09-27 18:15:48

如果我有一个有两个基类的类:

public partial MyClass : Base1, Base2 {

}

要调用Base1的构造函数,我将这样做:

public MyClass() : base(myParamForBase1); 

但是我需要调用第二个基类来获得基类初始化值,像这样:

base.OnInit(e); 

我不能做上面的当然,因为c#认为我指的是Base1而不是Base2,我如何解决这个问题?换句话说,我如何引用Base2?

一个派生类有多个基类,c#中的继承

c#不支持多类继承。您只能实现多个接口,并从单个基类继承(扩展)。

你所能做的就是创建一个继承自第一个基的类

像这样的

    public Base2 : Base1 {

    } 
    public MyClass : Base2  {

    }

我不喜欢这样,但在某些情况下它可能会有所帮助