【问题标题】:What is abstract data type ? Is it a class in Java? [duplicate]什么是抽象数据类型?它是Java中的一个类吗? [复制]
【发布时间】:2017-03-05 17:29:24
【问题描述】:

我的意思是什么是简单而准确的抽象数据类型?它是一个有特殊形式或放置方法的类吗?

【问题讨论】:

  • 您可能应该删除 adt 标签,因为它用于 Android 开发工具,而不是抽象数据类型。为了避免混淆,我还会在标题中说明这一点。
  • 您现在肯定已经在 Google 上搜索过“抽象数据类型”这个短语。您发现了什么,哪些部分对您没有意义?

标签: java adt


【解决方案1】:

抽象数据类型表示数据结构的模型,它指定数据的基本特征以及可以对其执行的操作。例如,在 Java 中,List 接口就是一个很好的例子。这是一个接口,它不是一些特定的实现。它定义了它处理的数据(一些东西的集合)和一组操作,如add()addAll()clear() 等。特定实现的示例是ArrayListLinkedListStack 等. 通过实现List 接口,这些类本身就变成了“列表”。

Java 中还有许多其他抽象数据类型的例子。这只是其中的一个例子。希望这可以帮助。

【讨论】:

  • 那么 ADT 只存在于实现数据结构的列表类或类时?而它之所以抽象是因为它与数据库或文件无关?它只是创建临时存储的记录或表,只是数据结构的一种方式?
  • 您的问题中的一切都搞混了。 ADT 与数据库无关,尽管 ArrayList 可以包含表示来自数据库的条目的对象。将 ADT 视为一个抽象概念(不要将其与 Java 中的抽象类混淆),它定义了一些数据模型,例如接口 List、Map 等 ArrayList、LinkedList、HashMap 等类是这些抽象概念(接口)的具体实现。如果您查看这些类的源代码,您将看到在其接口中定义的方法的特定实现。
猜你喜欢
  • 2022-01-09
  • 1970-01-01
  • 2015-06-12
  • 2018-02-19
  • 2012-05-03
  • 2010-09-20
  • 2020-03-22
  • 1970-01-01
  • 2012-11-29
相关资源
最近更新 更多