24

是否可以在C#

public class MyClass implements ClassA extends ClassB 
{

}

我需要这个是因为:我有两个类,其中一个Interface是我将在我的类中实现的类,但我也想使用另一个类的方法,它可以做一些我想在我的类中使用的东西。

4

4 回答 4

41

C# 不支持多重继承。您可以从一个类派生并使用接口来满足您的其他需求。

句法:

class MyClass : Foo, IFoo, IBar
{
}

interface IFoo
{
}

interface IBar
{
}

class Foo
{
}
于 2013-01-03T12:38:32.307 回答
8

试试这个:

using System;

public interface A
{
    void DoSmth();
}

public class B
{
    public void OpA() { }
    public void OpB() { }
}

public class ClassC : B, A
{
    public void DoSmth(){}
}

请记住,您不能从特定类级别的两个类继承,它可能只有一个类和任意数量的接口。

于 2013-01-03T12:41:59.693 回答
3
    class Base
    {
    }

    interface I1
    {
    }

    interface I2
    {
    }

    class Derived : Base, I1, I2
    {
    }

    static void Main(String[] args)
    {

        Derived d = new Derived();
    }
于 2013-01-03T12:41:12.783 回答
2

它应该如下所示:

public class MyClass: ClassB, InterfaceA{
}

ClassB 是基类

InterfaceA 是一个接口

只能扩展一个基类,但可以实现多个接口。

于 2015-05-17T12:26:40.647 回答