1.在C#中只支持单继承,有时候,我们需要使用多继承来实现一些功能,在C#中,我们可以使用接口实现这样的功能。一个类可以实现一个接口。
2.从一个类继承是一个强大的机制,但继承的真正潜力来源于从一个接口继承。接口继承允许将一个方法的名称和它的实现彻底分离。
3.声明一个接口,需要使用Interface关键字。在接口中,需要按照在类中一样的方式来声明方法,只是不允许指定任何访问修饰符。另外,还要将方法主体替换成一个分号,和抽象方法类似。
4.定义接口的一些限制
a.接口可由方法、属性、事件、所引器或是这四种成员类型的任何组合构成。
b.接口不能包含字段,即使是static字段。
c.接口成员一定是公共的。
d.接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有的成员。
e.不能直接实例化接口。
f.接口不包含方法的实现。
g.类和结构可从多个接口继承。
h.接口自身可从多个接口继承。、
5.实现接口
为了实现一个接口,我们需要声明一个class或struct,让它们从接口继承,然后实现所有接口方法。
6.实现一个接口,可以遵循以下规则:
a.方法和返回类型完全匹配。
b.任何参数完全匹配。
c.使用接口作为方法名的前缀,成为显示接口实现,这是个好习惯。
d.假如使用显示接口实现,方法不应有一个访问修饰符。