3 ポイント 投稿者 xguru 2023-01-24 | 5件のコメント | WhatsAppで共有
  • Java言語仕様を変更し、コンパイラに変更を適用
    • これにより、コンストラクタでは super()this() が最初の文である必要がなくなる
    • コンストラクタに対して提供される既存の安全性および初期化の保証は維持
    • 既存のプログラムは従来どおり引き続きコンパイルされ、動作する
  • 言語仕様ではこのように求められているが、JVMはより高い柔軟性を許容している
  • JEP: JDK Enhancement Proposal

5件のコメント

 
ehlegeth 2023-01-25

よく見ると、生産性向上のための小規模な機能を推進する Project Amber の一部なんですね。(昔の Project Coin みたいな感じ……?)
https://openjdk.org/projects/amber/

 
roxie 2023-01-26

Draft通過後は必ずAmberを経由するものだと思っていましたが、違うのでしょうか?

 
ehlegeth 2023-01-26

私もJEPプロセスはあまり詳しくありませんが、language specification に関連するJEPはたいていAmberプロジェクトで扱われているようですね。コンパイラグループの現在のプロジェクトの1つでもあります。

https://bugs.openjdk.org/browse/JDK-8300786/…(Draft%2C%20Submitted%2C%20Candidate)%20AND%20component%20%3D%20specification

 
twince 2023-01-24

やっとか..

 
xguru 2023-01-24

うーん、Javaを使っていた頃は面倒だった気がしますね。(もうあまりにも昔のことで、ちょっと記憶があいまいですが..)