JJUG ナイトセミナー 「Java SE 10 / JDK10リリース特集」に行ってきた。
※下書きで書いてたのを忘れていたため供養投稿
Java10がリリースされましたね。 まだ、Java9もインストールしていなかったのに・・・ 仕事ではJava6からJava8になったばっかりだし。
JDKリリースモデル
Oracle JDKについては、Oracleとの契約が必要になるようですね。
OpenJDK | Oracle JDK | |
---|---|---|
サポート | 無償 | 有償 |
サポート期間 | STS、LTS※ | LTS |
機能 | Oracle JDKと同じ | ー |
機能リリース | 6ヶ月単位のリリース | 6ヶ月単位のリリース |
メンテナンス | 3ヶ月単位のパッチ | 3ヶ月単位のパッチ |
※2018/5/22追記
きしだなおき氏のJavaのサポートについてのまとめ
を見まして、OpenJDKのサポートについてちゃんと理解していなかったなーと考え、
追記しました。
団体ごとにサポートポリシーは違うんですね。
Java SE 10
2018年3月21日にリリースされました。
けど、2018年9月にはJava SE 11がリリース予定。
Java SE 10のサポートは Java SE 11までの短い寿命だから、
開発でお試し程度にして使ってね。
var:型推論が実装 JEP 286
ローカル変数の型推論が実装されました。
読みやすくなる。短くなる。やったー。
なぜ「ローカル変数」だけ?
フィールドやメソッドの引数に適用すると、影響範囲が複数のファイルにまたがってしまう。
varの制限
varには制限がある。
// 以下は全部error var x; var x[] = new int[i]; var x = 1, y = 1; var x = {1, 2, 3}; var x = null;
Javaの予約語・キーワード
- 予約語:識別子として使える
- キーワード:言語の中で役割がある
varはキーワードで、class名に使えない。
int x = 3900; // OK var var = var(); // OK class var {} // NG
原則・ガイドライン
下記のOracle Blogを参照するのがいいと思います。
終わりに
仕事で使う時にはJava SE 11になっているだろうなー。