1.在C#中只支持单继承,有时候,我们需要使用多继承来实现一些功能,在C#中,我们可以使用接口实现这样的功能。一个类可以实现一个接口。

2.从一个类继承是一个强大的机制,但继承的真正潜力来源于从一个接口继承。接口继承允许将一个方法的名称和它的实现彻底分离。

3.声明一个接口,需要使用Interface关键字。在接口中,需要按照在类中一样的方式来声明方法,只是不允许指定任何访问修饰符。另外,还要将方法主体替换成一个分号,和抽象方法类似。

4.定义接口的一些限制

a.接口可由方法、属性、事件、所引器或是这四种成员类型的任何组合构成。

b.接口不能包含字段,即使是static字段。

c.接口成员一定是公共的。

d.接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有的成员。

e.不能直接实例化接口。

f.接口不包含方法的实现。

g.类和结构可从多个接口继承。

h.接口自身可从多个接口继承。、

5.实现接口

为了实现一个接口,我们需要声明一个class或struct,让它们从接口继承,然后实现所有接口方法。

6.实现一个接口,可以遵循以下规则:

a.方法和返回类型完全匹配。

b.任何参数完全匹配。

c.使用接口作为方法名的前缀,成为显示接口实现,这是个好习惯。

d.假如使用显示接口实现,方法不应有一个访问修饰符。