JEP草案: コンストラクタで `super()` と `this()` を先に書く必要がなくなる
(openjdk.org)- Java言語仕様を変更し、コンパイラに変更を適用
- これにより、コンストラクタでは
super()とthis()が最初の文である必要がなくなる - コンストラクタに対して提供される既存の安全性および初期化の保証は維持
- 既存のプログラムは従来どおり引き続きコンパイルされ、動作する
- これにより、コンストラクタでは
- 言語仕様ではこのように求められているが、JVMはより高い柔軟性を許容している
- JEP: JDK Enhancement Proposal
5件のコメント
よく見ると、生産性向上のための小規模な機能を推進する Project Amber の一部なんですね。(昔の Project Coin みたいな感じ……?)
https://openjdk.org/projects/amber/
Draft通過後は必ずAmberを経由するものだと思っていましたが、違うのでしょうか?
私もJEPプロセスはあまり詳しくありませんが、language specification に関連するJEPはたいていAmberプロジェクトで扱われているようですね。コンパイラグループの現在のプロジェクトの1つでもあります。
https://bugs.openjdk.org/browse/JDK-8300786/…(Draft%2C%20Submitted%2C%20Candidate)%20AND%20component%20%3D%20specification
やっとか..
うーん、Javaを使っていた頃は面倒だった気がしますね。(もうあまりにも昔のことで、ちょっと記憶があいまいですが..)