首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java中抽象和多态性的优势

Java中抽象和多态性的优势
EN

Stack Overflow用户
提问于 2015-04-16 12:52:32
回答 1查看 8.2K关注 0票数 6

我正在研究Java中的抽象概念。

以下是我的理解:

  1. 抽象是表示函数的签名和隐藏实现的方法,将其留给能够实现/扩展接口/抽象类的用户。
  2. 这样,我们可以获得更大的范围,以减少修改代码,可重用性.
  3. 我们可以将实时对象与程序代码中的对象紧密地联系起来。

,以下是我的问题:

  1. 当所有方法都是抽象的时候,抽象类可以像接口一样运行,为什么我们需要单独的接口呢?为了更好的理解,请举例说明。
  2. 我们可以在功能的基础上调用抽象类=接口+继承吗?因为我们可以与抽象类一起实现接口和继承的功能。
EN

回答 1

Stack Overflow用户

发布于 2015-04-16 12:58:01

简单地说:接口是一个契约,抽象类是框架实现。(此外,在Java中,接口主要是因为无法扩展多个类而使用的。)

合同说什么,执行怎么说。

接口示例: java.util.List。它拥有任何列表应该具有的所有方法:add()size()indexOf()等等。

抽象类的示例: java.util.AbstractList。虽然它有许多抽象方法,但在那里实现了一些不依赖于元素在具体列表中存储方式的List方法(addAll()equals()toString()等)。要创建完整的实现,并不是所有的List方法都应该实现,从而使实现者的工作更容易。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29675297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档