web-dev-qa-db-ja.com

Javaバージョン間の違いの要約?

ソフトウェア開発の観点から見たJavaバージョン間の主な違いは何ですか?プログラミングに関連する最も重要な変更の要約はどこにありますか?

http://www.Oracle.com/technetwork/Java/javase/releasenotes-136954.html などのリリースノートは読みにくい場合があります。

たとえば、Java 1.5には「for each」の新しいコード構造があります。

14
boucekv

これは Javaバージョン履歴)に関する優れたWikipediaの記事 の要約です。それは非常に選択的であり(そして私が知っていて使用しているものに偏っています)、それ以外の場合は単に記事のコピーであることが判明。

太字の部分は、言語全体を本当に前進させたものです。ご覧のとおり、すべてのリリースに大胆な部分があるわけではありません。

Java 11

JSR 384新機能

言語の変更:

ライブラリの変更:

Java 10

JSR 38新機能

言語の変更:

Java 9

JSR 379新機能

言語の変更:

ライブラリの変更:

その他の変更:

  • 人々は1.x命名規則を乗り越えたようで、これを「Java 1.9」と呼ぶ人はほとんどいません。

Java 8(別名1.8)

JSR 337新機能

言語の変更:

  • ラムダ式JSR 335 、メソッドハンドルを含む)
  • project Coinの継続(小さな言語の改善)
  • Javaタイプの注釈

ライブラリの変更:

Java 7(別名1.7)

JSR 336機能と拡張

言語の変更:

ライブラリの変更:

プラットフォームの変更:

Java 6(別名1.6)

JSR 27機能と拡張

既存のライブラリのほとんどが段階的に改善され、新しい言語機能はありません( the @Override snaf を除く)。

Java 5(別名1.5)

JSR 176機能と拡張

言語の変更:

  • generics (それが大きな問題です)
  • 注釈
  • enumタイプ
  • 可変引数、強化されたforループ(for-each)

ライブラリの変更:

  • Java.util.concurrentの同時実行ユーティリティ

Java 1.4

JSR 59

言語の変更:

ライブラリの変更:

Java 1.3

主にマイナーな改善、本当に。

プラットフォームの変更:

  • HotSpot JVM:元のJITに対する改善

Java 1.2

言語の変更:

ライブラリの変更:

プラットフォームの変更

  • 実際のJIT、速度を大幅に向上

Java 1.1

言語の変更:

  • 内部クラス

ライブラリの変更:

  • AWTイベントの変更
  • JDBC、RMI
  • 反射

Java 1.0

最初のリリース、すべてが新しいです;-)

94
Joachim Sauer