A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 林鹏 中级黑马   /  2014-7-8 15:43  /  1345 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 林鹏 于 2014-7-8 17:39 编辑

JAVA为什么要用到接口?接口只定义了抽象方法,需要子类去实现,这不是很麻烦吗?使用接口有什么好处呢?

11 个回复

正序浏览
在一定程度上可以实现多继承。
回复 使用道具 举报
本帖最后由 Darkhorse′Xa 于 2014-7-8 20:04 编辑

接口你也可以试着去理解就是实现对象的一些扩展的功能,比如fly()这个功能就可以定义为接口,因为并不是所有鸟都会飞(虽然有点牵强),飞机也会飞,所以可以将fly这个功能定义到接口里头.让鸟和飞机都可以实现这个扩展的功能,并对其实现方法进行特有的重写.
回复 使用道具 举报
还有一个作用,在一定长度上使得Java实现了多继承
回复 使用道具 举报
作为刚学习的同学来说,都有此疑惑,但是我们必须明确一点,既然接口存在,则一定有它存在的道理,也有它存在的优点,要不然在优胜劣汰的自然法则中,它怎么可能生存,
     下来说说接口的好处:
         首先接口是特殊的抽象类,接口中的方法都是抽象的,所以它具有抽象类的特点,也必然有抽象类的优点,接口只有方法体的声明,没有方法实现。一个类可以实现多个接口,但只能继承一个抽象类。在项目上,我们一般的做法是:最上层为接口,中间层次为抽象类,往下就是我们的实现类。为什么我们会在中间加上抽象类呢,就是为了提高代码的可重用性,你可以在抽象类里提炼出一些公用的已经实现的方法,那么底下那些实现类只要继承它也就继承了这些方法。现在在小项目中用到的可能不多,但是在大一些的项目中接口是非常必要的,举个例子:电脑是有零件组装子一起的,内存插到内存卡槽中,声卡插到声卡槽中。。卡槽就是接口,当你想对电脑升级时,你只要换张内存卡,声卡。。。就可以轻松完成电脑的升级工作。
回复 使用道具 举报
不管懂不懂,首先你必须明确一点,接口既然存在则必然有它存在的理由,第一接口中都定义了抽象方法,是对一类对象中共有方法的抽象,由于各个特殊类中对此方法的操作部同,所以必须重写父类方法,而接口只提供方法的定义,方便了各个特殊类对特殊方法的重写,
回复 使用道具 举报
我也在纠结这个问题
回复 使用道具 举报
赞一下!
回复 使用道具 举报
杨殿生 发表于 2014-7-8 17:32
统一口径啊,插座要是不统一口径,那我生产4个口5个口,大家想咋生产就咋生产那不就完了 乱套了吗 ...

这样啊,好吧
回复 使用道具 举报
林鹏 发表于 2014-7-8 17:25
比较形象,但是使用接口有什么好处呢?

统一口径啊,插座要是不统一口径,那我生产4个口5个口,大家想咋生产就咋生产那不就完了 乱套了吗
回复 使用道具 举报
杨殿生 发表于 2014-7-8 16:52
定义了规则,想玩这场游戏就要遵守规则,那你实现我的接口,就要做我让你做的事 ...

比较形象,但是使用接口有什么好处呢?
回复 使用道具 举报
定义了规则,想玩这场游戏就要遵守规则,那你实现我的接口,就要做我让你做的事
回复 使用道具 举报 1 0
您需要登录后才可以回帖 登录 | 加入黑马