Find JSRs
Submit this Search


Ad Banner
 
 
 
 

JSR 337 Maintenance Release 5: Java SE 8
JSR 337 Maintenance Release 5: Java SE 8
Change Summary
Iris Clark
2023/04/07

This document describes additional changes to the specification of JSR 337 which is defined by the Final Release in March 2014, Maintenance Release 1 in March 2015, Maintenance Release 2 in March 2019, Maintenance Release 3 in February 2020, and Maintenance Release 4 in July 2022. When specification text is provided, insertions are shown on a light green background and deletions are shown struck through on a light red background. Links to pages outside of those explicitly changed by this specification may not be functional.

Send comments to java-se-mr-spec-comments@openjdk.org.

1
Version Identification  

There is no change to the values returned by the system properties java.specification.version and java.vm.specification.version. They continue to report "1.8". The value returned by the system property java.specification.maintenance.version is "5".

2
GB18030-2022 Support  

Update the second paragraph of the "Unicode Conformance" section of the java.lang.Character class specification to allow code points in the range of U+9FCD to U+9FEF (35 code points) and the CJK Unified Ideographs Extension E block of the Unicode Standard to support GB18030-2022, Implementation Level 2.

The Java SE 8 Platform uses character information from version 6.2 of the Unicode Standard, with two three extensions. First, the Java SE 8 Platform allows an implementation of class Character to use the Japanese Era code point, U+32FF, from the first version of the Unicode Standard after 6.2 that assigns the code point. Second, in recognition of the fact that new currencies appear frequently, the Java SE 8 Platform allows an implementation of class Character to use the Currency Symbols block from version 10.0 of the Unicode Standard. Second, the Java SE 8 Platform allows an implementation of class Character to use the code points in the range of U+9FCD to U+9FEF from version 11.0 of the Unicode Standard and the CJK Unified Ideographs Extension E block from version 8.0 of the Unicode Standard, in order for the class to allow the "Implementation Level 2" of the Chinese GB18030-2022 standard. Third, the Java SE 8 Platform allows an implementation of class Character to use the Japanese Era code point, U+32FF, from the Unicode Standard version 12.1. Consequently, the behavior of fields and methods of class Character may vary across implementations of the Java SE 8 Platform when processing the aforementioned code points ( outside of version 6.2 ), except for the following methods that define Java identifiers: isJavaIdentifierStart(int), isJavaIdentifierStart(char), isJavaIdentifierPart(int), and isJavaIdentifierPart(char). Code points in Java identifiers must be drawn from version 6.2 of the Unicode Standard.

Add the following field to java.lang.Character.UnicodeBlock:

CJK_UNIFIED_IDEOGRAPHS_EXTENSION_E

public static final Character.UnicodeBlock
      CJK_UNIFIED_IDEOGRAPHS_EXTENSION_E


API Note:
      This field is defined in Java SE 8 Maintenance Release 5.

Since:
      1.8

The Change Specification Requests (CSR) associated with this change are 8301557 and 8305686.