Java版本之间的差异摘要?[关闭]


14

在软件开发方面,Java版本之间的主要区别是什么?在哪里可以找到与编程相关的最重要变化的摘要?

诸如http://www.oracle.com/technetwork/java/javase/releasenotes-136954.html之类的发行说明可能很难阅读。

例如,Java 1.5中有一个“针对每个”的新代码结构。


1
http://javadoc.allimant.org编译的Java文档中,您会发现有什么新功能?目录中的“部分”。一个Java版本的历史可以用维基百科。
Axel Kemper

Answers:


94

这是有关Java版本历史的Wikipedia优秀文章的摘要。它具有很高的选择性(并偏向于我所知道和使用的东西),否则它只会变成文章的副本。

大胆的部分是真正带来的向前的语言作为一个整体。如您所见,并非每个发行版都有大胆的部分。

Java 11

JSR 384新功能

语言更改:

库更改:

Java 10

JSR 383新功能

语言更改:

Java 9

JSR 379有什么新

语言更改:

库更改:

其他变化:

  • 人们似乎已经克服了1.x命名约定,几乎没有人称其为“ Java 1.9”。

Java 8(aka 1.8)

JSR 337新功能

语言更改:

库更改:

Java 7(aka 1.7)

JSR 336功能和增强功能

语言更改:

库更改:

平台变更:

Java 6(aka 1.6)

JSR 270功能和增强

天色逐步改进现有的库,没有新的语言功能(除了@Override天翻地覆)。

Java 5(aka 1.5)

JSR 176功能和增强功能

语言变更:

  • 泛型(那是最大的)
  • 注解
  • enum 类型
  • varargs,为循环增强(for-each)

库更改:

  • 并发实用程序 java.util.concurrent

Java 1.4

JSR 59

语言更改:

库更改:

Java 1.3

确实,主要是小幅改进。

平台变更:

  • HotSpot JVM:对原始JIT的改进

Java 1.2

语言更改:

库更改:

  • 一个统一收集系统
  • 在AWT之上摇摆为新的UI系统

平台变更

  • 真正的JIT,大大提高了速度

Java 1.1

语言更改:

  • 内部阶级

库更改:

  • AWT事件变更
  • JDBC,RMI
  • 反射

Java 1.0

初始版本,一切都是新的;-)


2
关于Java 6为何更改这么少的解释似乎在JSR 270页面上:当时看来,他们正在试验时间驱动版本而不是功能驱动版本的想法:“目标是定期发布功能版本18-24个月的周期...”
gna 2013年

@gnat:听起来不错,但是答案已经足够塞满了,我想将这样的其他信息排除在外。
Joachim Sauer

@JoachimSauer是的,您的回答听起来很正确,而没有“嵌入”这些细节。虽然...如果您添加指向1.4和更高版本的相应伞JSR的链接可能不会受到伤害,但这将隐式覆盖它以及更多的细节
gnat 2013年

1
嘿Axel,请不要感到难过。当然,我们要怪罪网络!我们为什么不能在PE上的Wikipedia上重新发布比赛?为什么我们必须诉诸复制和粘贴?为什么没有任何机制可以在pE中显示Wikipedia的内容?IMO这应该是基本的东西。想象一下Java 1.9出来了,您怎么看。哪个页面将保持最新状态?此答案只是复制和粘贴,程序员应该避免使用它,不是吗?
AndreasScheinert

1
@AndreasScheinert:Wikipedia的重点与SE不同。完整的Wikipedia文章肯定是有关此问题的太多信息。另外,我认为许可证不允许复制和粘贴内容。
Joachim Sauer
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.