JEP proposed to target JDK 18: 400: UTF-8 by Default

Remi Forax forax at
Wed Aug 18 17:03:10 UTC 2021

A minor comment, there is a sentence in the JEP that is weird.

"However, having to pass an argument prevents these methods from being used via method references (::) in stream pipelines."

You can not use these methods in a Stream anyway because they are declared with "throws IOException", so this argument does not hold.
I think this sentence should be removed.

The real argument is later in the same section, currently old APIs use the default charset and new APIs use UTF8, so we are asking developers to know the javadoc of these methods by heart.


----- Original Message -----
> From: "mark reinhold" <mark.reinhold at>
> To: "jdk-dev" <jdk-dev at>
> Sent: Mercredi 18 Août 2021 18:20:00
> Subject: JEP proposed to target JDK 18: 400: UTF-8 by Default

> The following JEP is proposed to target JDK 18:
>  400: UTF-8 by Default
>  Summary: Specify UTF-8 as the default charset of the standard Java
>  APIs.  With this change, APIs that depend upon the default charset
>  will behave consistently across all implementations, operating systems,
>  locales, and configurations.
> Feedback on this proposal from JDK Project Committers and Reviewers [1]
> is more than welcome, as are reasoned objections.  If no such objections
> are raised by 23:59 UTC on Wednesday, 25 August, or if they’re raised
> and then satisfactorily answered, then per the JEP 2.0 process proposal
> [2] I’ll target this JEP to JDK 18.
> - Mark
> [1]
> [2]

More information about the jdk-dev mailing list