【发布时间】:2018-06-08 18:30:00
【问题描述】:
对于 jstl 标签,提供了一个 API javax.servlet.jsp.jstl-api-1.2.1.jar 和实现 javax.servlet.jsp.jstl-1.2.1.jar。
对于 servlet,提供了 servlet-api.jar 中的 API 和来自 tomcat 或 GlassFish 的实现 jar。
对于集合,提供java.util.List 等API 和java.util.ArrayList 和java.util.LinkedList 等相应实现。
IDE Netbeans 是另一个例子。
实现 jar 包括 API(主要是接口)及其实现,为程序员/开发人员提供使用 API JAR 及其相应实现(单独的 JAR)的解决方案有什么优势?
对于使用 java 开发企业应用程序,提供 API 是否是开发人员之间稳定合同的标准方法?
【问题讨论】:
-
因为它可以轻松更改实现,而无需更改使用 API 的代码。另见:Type List vs ArrayList
-
@Jesper 我了解
class和interface级别的用法,用于使用接口进行编程。但是here 在 jar 级别,我没有包含 api jar。事情只适用于实现 jar,因为实现 jar 有 api(主要是 javainterface)和它的实现类。
标签: java api jpa api-design