这三个之间有什么区别(或关系)?
答案 0 :(得分:20)
有些人认为这仅与单词的含义有关。我认为这还不止于此,但让我们从单词开始。
在一般情况下:
如您所见,这些单词本身的纯英语含义实际上并没有帮助。我们需要更多的环境。在这种情况下,上下文位于您链接到的页面中。
“ Java语言规范”(JLS)。这是Java语言的规范。 JLS指定Java编程语言的语法和其他规定什么是有效Java程序的规则。它还指定了程序的含义;即当您运行(有效)程序时会发生什么情况。
“ Java规范请求”(JSR)。 JSR是作为Java Community Process(JCP)的一部分创建的文档,该文档为一组人员制定新规范的范围设置了范围。这些规范(AFAIK)始终与Java有关,但是它们经常解决那些不是Java SE或Java EE核心技术的问题。 JSR的典型主题材料是相对成熟的技术。即处于可以指定的状态。 (如果您尝试过早制定规格,那么通常会导致规格不合格。其他情况也会导致这种情况。)
“ Java增强建议”(JEP)。 JEP是提出对Java核心技术进行增强的文档。这些建议通常是针对尚未准备好进行增强的建议。正如JEP-0文件所指出的那样,JEP可能会呼吁探索新颖(甚至是“笨拙”)的想法。一般而言,将需要进行原型设计,以将可行和不可行的想法分开,并将其澄清到可以产生规范的地步。
因此,JEP,JSR和规范之间的关系如下:
JEP提出并发展实验思想,直至可以指定它们。并非所有JEP都能实现。
JSR具有成熟的思想(例如,来自JEP的思想),并产生新的规范或对现有规范的修改。并非所有JSR都能实现。
规范是JSR的常见工作产品。 (其他包括接口的源代码和参考实现。)JLS是规范的示例。其他包括JVM规范,Servlet和JSP规范,EJB规范等等。