Java中为什么要引进接口的概念?

抽象类中全部用抽象方法不就和接口一样了吗?... 抽象类中全部用抽象方法不就和接口一样了吗? 展开
 我来答
samismiling
推荐于2016-11-09 · 知道合伙人软件行家
samismiling
知道合伙人软件行家
采纳数:1340 获赞数:5604

向TA提问 私信TA
展开全部
  java接口的用处主要体现在下面几个方面:
  (1)通过接口可以实现不相关类的相同行为,而不需要了解对象所对应的类。
  (2)通过接口可以指明多个类需要实现的方法。
  (3)通过接口可以了解对象的交互界面,而不需了解对象所对应的类。

  类描述了一个实体,包括实体的状态,也包括实体可能发出的动作。
  接口定义了一个实体可能发出的动作。但是只是定义了这些动作的原型,没有实现,也没有任何状态信息。
  所以接口有点象一个规范、一个协议,是一个抽象的概念;而类则是实现了这个协议,满足了这个规范的具体实体,是一个具体的概念。
  从程序角度,简单理解,接口就是函数声明,类就是函数实现。需要注意的是同一个声明可能有很多种实现。

  1、接口中定义类方法的原型,但是不能说是空方法,因为空方法的意思是有实现体,只不过实现体是空操作。实际上接口没有定义任何实现体。具体的实现体都是在实现接口的类中,接口只是定义了这些方法的调用方式。
  你当然也可以不用接口,直接在类里面写方法,但是如果你的一组方法需要在很多类里实现,那么把它们抽象出来,做成一个接口规范,不是更好么?
  2、一个类描述了一个实体,这个实体可能是一个复杂的对象,它的动作很多,如果把这些动作分类,用接口a定义其中的某一组动作,接口b定义其中的另外一组动作,这样的结构,比较清楚。
  这种方式具备了多继承的优点,避免了多继承的缺陷。实际上在历史上,接口在很大程度上,是为了解决多继承带来的种种问题而设计出来的。
  3、包中那些已定义的接口,怎么知道那里面定义了什么方法。
  接口里定义了方法的输入输出,这些都是协议,具体的实现都在每个类中。对于很多只需要抽象接口的地方,不需要知道具体的类是什么,只要这个类实现了这个接口就可以了。
草薙在
2008-08-02 · TA获得超过4795个赞
知道大有可为答主
回答量:6187
采纳率:50%
帮助的人:6305万
展开全部
因为Java没有C++的多重继承,所以引入接口概念以便让Java的类模拟多重继承
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lxyboai
2008-08-06 · TA获得超过106个赞
知道小有建树答主
回答量:162
采纳率:0%
帮助的人:103万
展开全部
JAVA不同于C++,它是单亲家庭,即一个类最多只能继承一个类。
这种情况下为了实现与其他编程语言可以继承多个父类的功能,就引进了接口的概念,一个类可以实现多个接口的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kingjw0116
2008-08-03 · TA获得超过111个赞
知道答主
回答量:134
采纳率:0%
帮助的人:102万
展开全部
屏蔽底层实现,
从JDBC就可以有最简单的理解,java本身仅仅提供相关接口,而具体实现就是各大数据库产商,而我们编程人员不管用什么数据库,数据库操作代码都是不变的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
love__shuai
2008-08-02 · TA获得超过563个赞
知道小有建树答主
回答量:875
采纳率:0%
帮助的人:0
展开全部
JAVA继承只能继承一个类,要实现多个特点,只能实现多个接口来实现多继承~~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式