2013-03-01 41 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 
{ 
}