JDK-8277344 : 12.6: Note that finalization may be disabled
  • Type: Enhancement
  • Component: specification
  • Sub-Component: language
  • Affected Version: 17
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2021-11-17
  • Updated: 2021-12-13
  • Resolved: 2021-12-13
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 18
18Fixed
Related Reports
Relates :  
Description
For avoidance of confusion, JLS 12.6 should open with an informative note: "As of Java SE 18, the Java SE Platform Specification allows finalization of class instances to be disabled in an Implementation of the Java SE Platform, in anticipation of the removal of finalization from a future release of the Platform."

If finalization continues to be deprecated, but not removed, in Java SE 19, then 12.6's note will have to be updated to say "As of Java SE 19, ...". Only when finalization is removed will 12.6 be struck and references to `finalize` throughout the JLS be removed.

There is no impact on the JVMS, since it does not mention finalization, not even in 2.5.3 which introduces "garbage collector".