java - JLS、JSR 和 JEP 之间有什么区别(或关系)?

标签 java jls jsr jep

<分区>

这三者有什么区别(或关系)?

最佳答案

有些人认为这只是单词含义的问题。我认为不仅如此,但让我们从文字开始。

在一般情况下:

  • 规范指定(或定义)某物的文档。
  • 请求是要求某事的声明(书面或口头)。
  • 提案是提出要考虑的事项的声明(书面或口头)。

如您所见,这些词本身的简单英语含义并没有多大帮助。我们需要更多的上下文。在这种情况下,上下文位于您链接到的页面中。

Java 语言规范,JLS

这是 Java 语言的规范。 JLS 指定了 Java 编程语言的语法和其他说明什么是或不是有效 Java 程序的规则。它还指定程序的含义;即当你运行一个(有效的)程序时会发生什么。

Java 规范请求,JSR

JSR 是作为 Java Community Process (JCP) 的一部分创建的文档,它为团队开发新规范设定了范围。这些规范(据我所知)总是与 Java 相关,但它们经常解决的问题不是核心 Java SE 或 Java EE 技术。一个典型的JSR的主题 Material 是一个相对成熟的技术;即处于可以指定的状态。 (如果你过早地尝试制定规范,那么你通常会得到一个糟糕的规范。其他因素也可能导致这种情况。)

Java 增强建议,JEP

JEP 是一个提议增强 Java 核心技术的文档。这些提案通常用于尚未准备好指定的增强功能。正如 JEP-0 文件所述,JEP可能要求探索新颖(甚至“古怪”)的想法。一般来说,原型(prototype)设计需要将可行和不可行的想法分开,并将它们阐明到可以产生规范的程度。

所以JEP、JSR和规范之间的关系是这样的:

  1. JEP 提出并开发实验性想法,使其可以被指定。并非所有 JEP 都能实现。

  2. JSR 采用成熟的想法(例如来自 JEP),并产生新的规范或对现有规范的修改。并非所有的 JSR 都能实现。

  3. 规范是 JSR 的常见工作产品。 (其他包括接口(interface)源代码和引用实现。)JLS 是规范的示例。其他还有JVM规范、Servlet和JSP规范、EJB规范等。

关于java - JLS、JSR 和 JEP 之间有什么区别(或关系)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51282326/

相关文章:

java - 如何找到java.rmi包的jar

java - Java 类名区分大小写

java - 当焦点位于editText时只需打开键盘英文

java - 遍历 Java 字符串行的最佳方法是什么?

java - 使用 Apache POI 删除 HSSF 表的数据验证

Java 转换 : is the compiler wrong, 还是语言规范错误,还是我错了?

java - 每个内部类都需要一个封闭实例是真的吗?

rest - jaxrs-api VS jsr311-api VS javax.ws.rs-api VS jersey-core VS jaxrs-ri

java - JSR:评估规范与构建实现规范

java - Play 2.2.3 无法通过 Play.application().resource 查看文件