日期:2014-05-17  浏览次数:20865 次

C#的overide隐式继承一个接口和显示继承一个接口的区别?
<<C#入门经典>>这本书上面讲到,实现一个接口有显示和隐式两种方法。但是书上的例子讲的很不清楚。
各位大侠能给举个容易理解的例子么?

------解决方案--------------------
比如有两个接口IA ,IB 都有一个dowork函数
如果一个类C要同时实现这两个接口,该怎么办?
想清楚这些就清楚了
------解决方案--------------------


简单来说就是说 如果继承的一堆接口中 有2个或者2个以上的接口有同名的属性/方法,而它们又是不同的功能的话,你就应该显示继承接口

反过来 随意(一般用隐式,因为可以偷懒)

如果你很犹豫应该用哪一种 而又必须保证不会出问题 直接使用显式
------解决方案--------------------
显式实现接口可以让接口方法隐藏起来,除非调用者用as运算符作为接口类型,才能调用。

显式实现接口的优势在于,让调用者不能绕开接口而直接调用其中的方法,增强代码的可读性同时避免调用者的疏忽。
------解决方案--------------------
引用:
Quote: 引用:

比如有两个接口IA ,IB 都有一个dowork函数
如果一个类C要同时实现这两个接口,该怎么办?
想清楚这些就清楚了


该怎么办呢? 这就是我的问题啊,没有想清楚的。

IA.dowork() and IB.dowork()