Ulf, Please do not delete methods in Surrogate.java (because we take compatibility seriously) but instead gently denigrate them, as I do below (added to my patch isBMPCodePoint2)
diff --git a/src/share/classes/sun/nio/cs/Surrogate.java b/src/share/classes/sun/nio/cs/Surrogate.java --- a/src/share/classes/sun/nio/cs/Surrogate.java +++ b/src/share/classes/sun/nio/cs/Surrogate.java @@ -77,6 +77,7 @@ /** * Tells whether or not the given UCS-4 character must be represented as a * surrogate pair in UTF-16. + * Use of {...@link Character#isSupplementaryCodePoint} is generally preferred. */ public static boolean neededFor(int uc) { return Character.isSupplementaryCodePoint(uc); @@ -102,6 +103,7 @@ /** * Converts the given surrogate pair into a 32-bit UCS-4 character. + * Use of {...@link Character#toCodePoint} is generally preferred. */ public static int toUCS4(char c, char d) { assert Character.isHighSurrogate(c) && Character.isLowSurrogate(d); Martin