对接口的一点理解

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

最近想正儿八经的研究些面向对象的东西,找了本thinking in java看看,觉得还不错。看过一个例子后,突然发现,原来印象中的接口也不过如此而已。书中提到:“接口(interface)比抽象(abstract)的概念更进了一步。你可以把一个接口看成是一个纯的抽象类。”我认为作者对接口的这一解释再准确不过了。

那么,为什么要使用接口呢?java只支持单继承的机制,很显然的,这样的一套体系建立起来的继承关系的最终结构必定是像一棵N叉树。这种树形结构虽然条理明晰,但一旦要处理的实际问题变得复杂起来,势必将造成类结构树的迅速增长,直接的结果是:处在下层子类的间接父类越来越多,最终使得子类成员膨胀、臃肿、难以维护,同时类的设计者处理问题时头绪太多,如履薄冰。

简言之,引入接口就是为了打破这种简单的树形结构。一个类继承了某个类后,还一个横插N个接口上来,然后,只需要实现这些接口的所有方法,这样之后,会出现什么情况呢?外部的主逻辑程序看这个类,接口中定义的方法和继承来的方法、类本身定义的方法,所有的方法,一视同仁,实现了整体上的封装和设计上的灵活。

在作一下笔记:

1, 接口的实现可以由java语言编写,也可以由其他语言编写。这也是ejb的应用原理。

2, 接口的一般用处:

用接口来定义一些全局变量——接口中定义的属性都是static + final 类型的

用接口来定义基本数据结构——定义行为,根据不同的需要定义不同的实现(定义方法接口时只需要方法名、返回类型、形参表, 不要方法体)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航