到底为什么要用接口.为什么?

pipezzang 2009-11-25 02:39:11
java中的借口是不是一个标准或者一个规范啊?
就是让其他实现类实现该接口,要让他按接口定义的方法来实现的意思啊?
我就是不知道为什么要用接口.
不用接口不行吗?
我觉得java中不用接口也都可以实现啊?
...全文
251 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
bayougeng 2009-11-25
  • 打赏
  • 举报
回复
打个最简单的比方:
你看到一个英文单词,不明白什么意思。你可以通过下面这些途径解决:
1.上网搜索
2.字典
3.请教同学或朋友
4.翻译软件
……
它们有一个共同点:可以翻译,具备翻译的功能。
那么这个翻译功能就是一个接口。无论是计算机,书本还是人,只要实现了这个接口就能为你提供服务。
实际上你并不关心未你提供服务的是什么,关心的是它能给你解决问题。

java里也是这个道理。比如,JButton的方法:
public void addActionListener(ActionListener l)
这里的ActionListener就是一个接口,无论哪个类,只要实现了这个接口就能行。
仔细体会一下。
villagehead 2009-11-25
  • 打赏
  • 举报
回复
接口是一个“规范”
是某个类行为的准则,
拿Runnable来说,
实现了runnable接口的类,必须有run方法,
至于执行不执行,(有些实现了接口的类里面的方法是空的,比如某些adapter)
执行什么就不管了。

也就是说,
你(类)是我(runnable接口)的实现,就必须符合我的规则,
至于你run什么,你爱run什么run什么,不是“规范”的内容。

就像电锯惊魂里面,
告诉你去找答案吧,
怎么找,找不找随你。

呵呵

其实要真正理解接口的用途,程序概念只有单层是不够的,
起码有一个“框架层”和一个“业务层”会更好理解的。

good luck
ScAREcrOw_ss 2009-11-25
  • 打赏
  • 举报
回复
我说的简单点,接口就像个USB插孔,你定义好了USB插线的规则,所有的U盘都要符合

然后你就可以需要哪个功能插入哪个U盘,而不用在意到底是哪个U盘

其实你为每个U盘都设计一个插口也没什么不可以的,完全可以实现功能,但是你的电脑将全是USB插孔,而且有新的U盘时又要设计一种插口。
bingliang008 2009-11-25
  • 打赏
  • 举报
回复
不用接口也都可以实现,不代表可以很好的实现啊。这个不是行不行的问题,是到了某个时候自然而然的事情。
my_caterpillar 2009-11-25
  • 打赏
  • 举报
回复
现在初学Java的话,代码量很少,程序很小,暂时体会不到接口的重要性,现在就是说要不断的编程,最好是能跟着视频或者是一个完整程序,把它编写出来,然后弄懂当中的每一句话,体会一下接口的好处,程序大了自然就知道接口的好处了!
liugxb 2009-11-25
  • 打赏
  • 举报
回复
接口是实现软件松耦合的重要手段,它描叙了系统对外的所有服务,而不涉及任何具体的实现细节,它与抽象类有点类似,但又不同于抽象类,如1楼所说,JAVA里只能是多继承,而我们一个类可以通过实现多个接口来达到这一目的。
我们可以将接口看做软件系统最高层的抽象类型,而把抽象类看做抽象和实现之间的半成品,相信通过与抽象类的对比可以让你明白接口的作用。
guolighting 2009-11-25
  • 打赏
  • 举报
回复
有了接口,在需求分析时,就只需要考虑功能模块,具体的实现细节可以不用考虑,由专业的人去做.
zcl198715 2009-11-25
  • 打赏
  • 举报
回复
这分我要了!
没接口,java能多继承吗?
不用接口的项目,不要谈什么扩展,架构。。。
你自己有了一点的代码量后,就不自觉的发现了面对接口编程的好处
空洞的理论没用!

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧