wwewbw

博客园 首页 新随笔 联系 订阅 管理

接口:

定义:接口就是语义相关的一个或多个抽象成员组成的命名集合。接口表示的是指定的类或结构需要支持的行为。

->接口包含的成员不带访问修饰符(因为所有接口成员都隐式规定为公共(public)和抽象(abstract)的。

->所有在接口中定义的成员都必须在要实现它的类或结构中实现。

接口与抽象类的对比:

->相同点: 当一个类派生自抽象基类时, 它必须实现抽象方法的细节(倘若派生类没有声明为抽象的)

->不同点: 抽象基类不只能够定义一组抽象方法,还可以指定公用的、私有的和受保护的状态数据以及许多可被子类访问的实体方法

如何动态判断一个类型支持哪些接口?

1.       显式强制转换: IPointy a =( IPointy)b; 需要使用结构化异常处理;不推荐。

2.       as关键字(获取接口引用):可以在使用该关键字的语句中得到指向该对象接口的引用;否则,将返回一个值为null的空引用。

IPointy a = b as IPointy; if(a!=null) { } else { }

3.       is关键字(获取接口引用): 如果要考察的对象与指定接口不符,将返回false值。

If ( b is IPointy) { } else { }

显式接口实现:

->不能在定义显式实现成员时加访问修饰符。

posted on 2010-02-23 18:25  wwewbw  阅读(288)  评论(0编辑  收藏  举报