Projet de JEP : plus besoin que `super()` et `this()` soient appelés en premier dans les constructeurs
(openjdk.org)- Modification de la spécification du langage Java et application des changements au compilateur
- Désormais, dans un constructeur,
super()etthis()n’ont plus besoin d’être la première instruction - Les garanties existantes de sécurité et d’initialisation fournies aux constructeurs sont maintenues
- Les programmes existants continueront à être compilés et à fonctionner comme auparavant
- Désormais, dans un constructeur,
- Le langage l’exigeait ainsi, mais la JVM autorise davantage de flexibilité
- JEP : JDK Enhancement Proposal
5 commentaires
En y regardant de plus près, cela fait partie du Project Amber, qui pousse de petites fonctionnalités axées sur la productivité. (Un peu comme l’ancien Project Coin… ?)
https://openjdk.org/projects/amber/
Je pensais qu’après le passage en Draft, ça passait forcément par Amber, non ?
Je ne connais pas très bien non plus le processus des JEP, mais il semble que les JEP liées à la spécification du langage soient en majorité traitées dans le projet Amber. C’est aussi l’un des projets actuels du groupe compilateur.
https://bugs.openjdk.org/browse/JDK-8300786/…(Draft%2C%20Submitted%2C%20Candidate)%20AND%20component%20%3D%20specification
Enfin...
Hum, oui, j’ai l’impression que c’était pénible à l’époque où j’utilisais Java. (Ça remonte à tellement longtemps maintenant que mes souvenirs sont un peu flous… )