C# Interface 的总结

接口定义了一份规则,实现了接口的类或者结构就必须遵守这些规则

  接口有以下特征:可以从一个或多个基接口继承,一个类或结构也可以实现多个接口;接口不能包含字段、常量、运算符、实例构造函数、析构函数及任何静态成员;它的成员默认都是public(c# 中可以显式的将其声明为 public)

1. 接口不能被实现化,它的声明是抽象的;实现接口的类必须实现它的所有成员。

2. 接口用关键字interface来定义,它的访问修饰符可以是public或者internal,而它的成员不能用任何访问修饰符修饰。

 

如果一个类实现了两个接口,而接口中却有两个完全一样的方法,并且在类中实现了这个方法,但么这两个接口的引用实例都能使用这个方法。

如果要在限定实现的到底是哪个接口的方法,那么就需要用类似于“命名空间.接口名.方法名”的方法来显式的实现。

对于显式的接口成员实现,只能通过接口进行访问,即使在实现类中的其他方法也不能调用

 

3. 接口成员一定是公共的,而且是默认的

注:如果实现类和接口不是处在同一程序集中,接口需要显式声明为 public,否则 类将无法访问

另:如果一个类同时继承了一个类并且实现了一个或多个接口,类必须要写在 “:" 后面的第一个位置。(先类名,后接口)

posted @ 2012-07-17 14:56  xust  阅读(155)  评论(0)    收藏  举报