C#显示实现接口的意义
1、如果一个类,实现某个接口。
在VS给的提示中可以看到,有两种实现方式。如下图
一个是实现接口XXX,一个是显示实现接口XXX。
那么这两个有什么区别,以及什么时候用显示实现呢?
下面我们讲一讲。

2、在VS中添加控制台应用程序,
并添加Human类,类中添加Eat方法。
如下图:

3、添加IKiller接口,
接口中添加Kill方法。
如下图:

4、Human类实现IKiller接口,
先用第一种形式实现。
如下图:

5、下面重点来了!!!
在Main函数中,定义Human类实例Jack。
调用Jack的方法,可以看到Jack有Kill这个方法。如下图:

6、也就是说,我定义的Jack是Human类,
但是每个人都可以看出来Jack是个Killer。
这样显然不合理。
Jack平时不想展示自己杀手的一面,只想做个普通人。
当接收到暗杀任务时,才切换到杀手模式。
那么有办法实现上面的要求吗?

7、聪明的同学估计猜到了,该轮到显示实现接口出场了。
修改IKiller接口的实现方式,
改为显示实现,如下图:

8、这样再调用Human的Jack,
就看不到Kill方法了。如下图:

9、如果Jack接收到了暗杀任务,
需要展现杀手的一面,
只需要把Jack的类型,改成IKiller即可。
如下图:

10、按照惯例总结一下:
接口的显示调用方式,是C#为了更精准的表现现实世界而发明的。
类只有在接口的类型下,才会表现出接口的方法。
这样的方式更合理。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:173
阅读量:133
阅读量:177
阅读量:160
阅读量:24