2012-03-22 102 views
-3

爲什麼我不能做這樣的事情在C#(僞代碼如下)接口繼承和派生類

Interface1 
{ 
    Method1(); 
} 

Interface2 : Interface1 
{ 
    Method2(); 
} 

Class1 : Interface1 
{ 
    Method1() 
    { 
    } 
} 

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

究竟是你的問題,還是錯誤,你正試圖解決? – ashes999 2012-03-22 13:42:51

+1

可能因爲只有一半的代碼是有效的C#語法。你有沒有編譯的實際C#代碼? – 2012-03-22 13:44:44

+0

在方法名稱 – 2012-03-22 13:45:05

回答

3

你可以,如果你糾正你的錯誤中定義一個接口,並在指定返回類型的方法。

interface Interface1 
{ 
    void Method1(); 
} 

interface Interface2 : Interface1 
{ 
    void Method2(); 
} 

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

class Class2 : Class1, Interface2 
{ 
    public void Method2() 
    { 
    } 
} 
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() 
    { 
    } 
}