一个关于接口的问题

05-08-17 TAxxjszxlkjf
小弟我初学java,学到接口的时候遇到困难,体会不到接口存在

的真正意义,哪位大虾可以举一两个接口的具体实例,体现一下

使用接口的优越性及其存在的真正意义小弟在此万分感谢。(我看书上的例子即使不

使用接口也可以呀)

gaofangjian
2005-08-18 08:25
我感觉在程序中多用接口可以使你的应用程序易于扩展,定义一个统一的

接口后,你就可以用很多具有不同功能的类来实现这一接口。我感觉接口主要是对业务逻辑的抽象。

比如

interface 卖东西

{

检查库存();

计算价格();

开发票();

更新库存();

}

下面当你实现这个借口的时候,你就可以根据具体需求来实现。

比如 汽车

卖汽车 implement 卖东西

{

检查库存(){看看库存有没有汽车}

计算价格(){根据具体的算法计算汽车价格}

。。。。

还可以加入类的自己的特有的方法

}

蔬菜

卖蔬菜 implement 卖东西

{

检查库存(){看看还有没有菜}

。。。。。

}

当用到这些实现类的时候,我们根据具体的情况,选择具体对象使用

class 超市

{

卖东西 sale= 卖东西工厂.create("汽车");

卖东西 sale1=卖东西工厂.create("蔬菜");

/*当卖东西内的逻辑关系变化时候,就不会影响到超市

如果把代码都写到超市里面,就完蛋了,那样的话更改

就很痛苦。

而如果利用接口实现的话,我们改动接口实现类即可(有可能这个更改是别人,比如利用的提供的现有的组件。

*/

}

我只是一个rookie,希望banq能够指点一下,帮助一个java的狂热粉丝

banq
2005-08-18 08:48
其实我以前也有过这样想法,但是我学习了设计模式之后就体会到了,你可以学习工厂模式等简单模式看看。

banq
2005-08-22 11:36
你理解很对,接口其实主要是对自身没有太多益处,主要解决与调用者的解耦关系,如果没有接口,就是类直接调用类,这样类和类耦合了,而使用接口,则类-->接口-->类,甚至是类直接调用接口:类-->接口,类如使用jdon框架就可实现类-->接口,无需关系接口的具体实现。

awardsure
2005-08-27 17:08
接口可是java的灵魂啊。 首先java不像c++没有多继承 但是 面向对象 要多态啊。 如果没有interface那多态不能实现。 再次,假设你的应用程序除了一些不变类用classs而其它都使用interace在工作的话 那可以这么说 如果在业务逻辑没有发生变化的情况之下 可以实现无需重新编译就可以轻轻松松完成升级(特别是在数据库移植情况下有用)。

tomuno
2005-08-29 09:12
有利于分布式开发,有利于开发外包

猜你喜欢