2013-03-01 59 views
-2

我想知道,如果假設我有一個基類繼承一個接口說我和另一個類說B,則有訂購繼承

Class A : I,B 
{ 
    // Function and Members 
} 

Class A : B,I 
{ 
    // Function and Members 
} 
+6

基類應該在接口之前先出現。因爲你只能繼承一個基類。 – 2013-03-01 08:10:42

+0

@JW。請你詳細說明一下! – 2013-03-01 08:12:23

+1

據我所知,C#不直接支持多重繼承,就像你在這裏試圖表達的那樣 – 2013-03-01 08:12:44

回答

6

先指定類。

從C#4規範的第10.1.4:

類聲明可以包括一類基規範,定義直接基類的類和接口由類直接實現。

class-base: 
    : class-type 
    : interface-type-list 
    : class-type , interface-type-list 

注意不存在interface-type-list , class-type選項。

2
之間有什麼區別

你應該總是先放基類。 在C#中,你只能繼承一個類,但很多接口:

public class MyClass : BaseClass, IInterface1, IInterface2 
{ 
} 

接口的順序並不重要

public class MyClass : BaseClass, IInterface2, IInterface1 
{ 
}