Oracleは20日(現地時間)、Javaのメジャーバージョンアップ版「Java 10」をリリースしたことを発表しました(Phoronix)。現在Linux/macOS/Windows/Solaris SPARC用のOracle版JDK/JRE実行ファイルをOracle公式サイトよりダウンロードすることができます。またOpenJDK版のmacOS/Windows/Linux版バイナリもOpenJDKサイトよりダウンロード可能です。
Java 10はJavaが6ヶ月のリリースモデルを採用して以後公開された初のメジャーバージョンアップ版で、OracleによるJDKの無償配布は今回公開されたJava 10が最後となる模様です。
Java 10の最も大きな変更点としては、ローカル変数の型推論の導入があげられます。以下のようにvarを利用することでローカル変数の型を明示しなくてもよくなる機能です。
var list = new ArrayList(); // infers ArrayList
var stream = list.stream(); // infers Stream
そのほかJava 9で導入されたG1ガベージコレクタの改良や、アプリケーションクラスデータシェアリング、スレッドローカルハンドシェイク、試験的なJavaベースのJITコンパイラ、ルート証明書などさまざまな新機能が追加されています。
Oracleのリリースモデルの変更によって、Java開発者も大きな影響を受けそうです。Oracleと商用契約を結べない場合など、OpenJDKに移行する人が増加するのかもしれません。