@
passerbytiny 缩写错了, JLS = Java Language Specification
是 oracle 出的 java 语言规范的说明文档, 是告诉了你这个版本的 java 语言支持哪些标准. 这个是说支持哪些规范,而不是说 定义了一些规范.
JLS 就是个菜篮子, 你去逛商场,你要哪个就把哪个放进来, 但不是说你要自己在菜篮子种白菜.
JLS 的 se8 文档会告诉你, 这个版本里支持 JSR-335(lambda 表达式), 不支持 JSR-376(模块化语法) .
那这个 JSR-xx 是什么呢, 是 JCP 提出的一些规范, 这些规范告诉了你 某个语法是怎么写的, jvm 某个特性会如何执行, 这个最终定稿是靠投票的, 是 JCP 的大佬们开会的.
Oracle 作为 Java 商标拥有者 确实在这个会议上话语权不小,但也有其他话语权不弱于它的大佬, 比如 IBM, AZUL 等等.
定标准的永远都只有 JCP 一个地方.
类似 js 里那种 -webkit-xxx 这种事实规范抢先与规范设计和审议的事情在 java 里不存在, 这样的情况会影响兼容性.
从 sun 创建 java 的时候就就不允许这种影响跨平台兼容性的事情发生,参考 微软的 j++.
如今安卓导致了类似的问题, 所以现在 java 社区有些人在尝试做一个运行在安卓 Dalviks 上的真正的 JVM...
继续做到 "一次编译到处调试".
另外你看英语不好也可以翻译网页啊, 那个问题被关闭是因为提问者问有没有人能给个书或者文档, 让他详细了解一下几个的区别, 而有的人觉得这种提问会引来一堆推广自己作品的垃圾广告,所以才关了.