C#的接口通过interface关键字进行创建,在接口中可以包含属性,方法等成员变量。接口的派生类可以对接口中的方法进行实现。一个类可以继承多个接口对这些接口中的方法进行实现,一个接口也可以派生多个类接口中的方法可以由这些类中的一个或多个进行实现。在接口的派生类中可以直接调用接口中的方法。
在派生类中调用举例:
代码如下 | 复制代码 |
//接口 publicinterfaceIPersonalService { //接口中的方法 PersonalDTO QueryByUid(intuId); } //接口派生类 publicclassPersonalService : IPersonalService { //派生类中实现接口方法--隐式实现 publicPersonalDTO QueryByUid(intuId) { return_dal.QueryByUid(uId); } //派生类中调用接口方法 publicvoidGetInfo(intuserId) { //调用方式一 IPersonalService p =newPersonalService(); PersonalDTO dto = p.QueryByUid(userId); //调用方式二 PersonalService p2 =newPersonalService(); IPersonalService p3 = (IPersonalService)p2; PersonalDTO dto = p3.QueryByUid(userId); } } |
在外部类中调用一个接口的方法时先引用接口所在的命名空间而后的步骤和在接口的派生类中调用方式相同。
在外部类中引用接口所在的命名空间后声明一个接口类型的属性也可以调用该接口,如下。
代码如下 | 复制代码 |
publicIPersonalService pService{get;set;} publicvoidgetInfo() { pService.getInfo(); } |