Java 中的 API 和函数/类声明

问题描述 投票:0回答:2

我正在阅读 Sedgewick 和 Wayne 撰写的 算法 的第一章(以及 Java 编程简介 的前两章)。我不明白API是什么意思。以下为书中节选:

enter image description here

举例如下:

enter image description here

这是我的问题

  • API 是 Java 代码的一部分吗?
  • API 与函数/类声明有何不同?
java terminology code-documentation
2个回答
1
投票

API 是代码库的接口。它由用于与库交互的对象和方法组成。


0
投票

好问题。系统在某种程度上可以比作一个谜题。例如,网站可能由 WordPress 博客引擎和数据库 (MariaDB) 组成。如果两者都被视为拼图块,则它们相应面的形状必须匹配才能将它们组合在一起。 WordPress 没有间插和空白,而是使用 SQL,MariaDB 也使用 SQL。如果 SQL 方言匹配,则各块之间的行是相同的,并且一个块可以插入到另一个块旁边,因此两个块都具有兼容的软件接口。不过,API 并不是很短,而是要复杂得多。

大多数 API 包含大量函数/方法,双方必须有相应的行为。正如 Kirby 所写,从技术上讲,API 是客户端和库之间的“线条形状”。但这个词已经变得极其混乱,因为它获得了许多其他含义。通常,API 表示线条形状的描述,即 API规范,它可以是描述库中对象的文档,也可以是一组 Java 接口。从这个意义上说,那么是的,API(规范)可以是“Java 代码的一部分”。

从技术上讲,API 与类声明的不同之处就像拼图边缘的形状与拼图本身不同一样; SQL 与 MariaDB 有很大不同。话虽如此,在实际行话中,API 已被用来指代 API 的实现。在网络中尤其如此。当人们谈论 web API 时,他们通常指的是 服务,为消费者提供 API 实现。

简而言之,API的含义已在很大程度上/过度推断,现在您问题的答案取决于上下文。如果我们将软件接口和 API 进行类比,在前面的示例中,当前的行话可以使用“API”来指代:

  1. 结构化查询语言本身(界面)
  2. 指定 SQL 标准(接口规范)的 ISO 文档
  3. 符合 SQL 的 DBMS 引擎,例如 MariaDB(一种实现;被禁止但常见)

在 Java 上下文中,API 通常是一个小包,其中包含抽象类,这些抽象类在实现该 API 的一个或多个包中实现。

© www.soinside.com 2019 - 2024. All rights reserved.