本随笔,之所以叫随笔而不叫文章。就是说本文只是个人对技术的粗浅理解,不当、抑或错误之处在所难免。如遇高人指点一二,自当不胜感激。

从概念上看接口


1、MSDN上有如下定义:

接口描述的是可属于任何结构的一组相关功能。

 

那么何为一组相关功能,其实就是一种共同的行为。那么为什么要把这种共同的行为,抽象到一个接口中呢?

这就要从下面说起了:

1、规范和约束

       中国有句古话叫做“没有规矩不成方圆”,经过千年的传承,证明这句话还是很有道理的。车同轨,书同文,行同伦。经济才能发展,社会才会进步,这就充分说明了规范和约束存在的重要性。现实生活中的例子也比比皆是,比如家里的电源插座就只有两种接口,试想一下,如果不同的电器产品都有自己的电源插座的标准,而不遵守这种约束,那将会成什么样子?在比如我们常用数码产品的数据线,我总是在想要是所有的都能用一条该多好啊!废话说了一堆,我无非是想说规范和约束,在特定的情况下是有好处的这也就是为什么要把这种共同的行为,抽象到一个接口的原因之一。

2、多态的实现

关于多态,大家可以参看MSDN,至于能不能理解,能理解到什么程度,全在个人修行,通过接口可以实现这种多态的行为。

 

从C#语言看接口


关于接口如何使用,语法层面上的东西我不想多说,园子里已经有很多文章,大家可以参考。在这里我想通过显式接口以及访问修饰符的层面上来谈谈我对接口的理解。

大家都知道接口中定义的成员是没有访问修饰符的。例如:如果你要在 void doWork()前面加上访问修饰符,编译将不会通过。

interface IControl
   2: {
void doWork();
   4: }

相关文章: