接口继承和派生类

时间:2012-03-22 13:40:33

标签: c#

为什么我不能在c#中执行类似的操作(伪代码跟随)

Interface1
{
    Method1();   
}

Interface2 : Interface1
{
    Method2();
}

Class1 : Interface1
{
    Method1()
    {
    }
}

Class2 : Class1, Interface2
{
    Method2()
    {
    }
}

2 个答案:

答案 0 :(得分:3)

如果您在定义界面时纠正错误并在方法上指定返回类型,则可以。

interface Interface1
{
    void Method1();   
}

interface Interface2 : Interface1
{
    void Method2();
}

class Class1 : Interface1
{
    public void Method1()
    {
    }
}

class Class2 : Class1, Interface2
{
    public void Method2()
    {
    }
}

答案 1 :(得分:2)

你可以做到。

public interface Interface1
{
    void Method1();
}

public interface Interface2 : Interface1
{
    void Method2();
}

public class Class1 : Interface1
{
    public void Method1()
    {
    }
}

public class Class2 : Class1, Interface2
{
    public void Method2()
    {
    }
}