[statics] allowing static initializers in interfaces?

Brian Goetz brian.goetz at oracle.com
Tue Nov 17 14:08:20 UTC 2020


The goal of this effort is to make nesting of static members more 
uniform by eliminating such "gratuitous" restrictions, so this seems 
within the spirit.

On 11/17/2020 9:03 AM, Maurizio Cimadamore wrote:
> Hi,
> now that the work on allowing static members in nested declarations 
> [1] is wrapping up, I'm wondering if we could add treatment for one 
> more case: static initializers in interfaces. This seems a case where 
> the static compiler is already inserting static blocks (to initialize 
> any static fields an interface might declare), but where the JLS is 
> currently forbidding interfaces from having an explicit static 
> initializer block in the source code. This make e.g. initialization of 
> fields which might throw exceptions (e.g. method handles) not possible 
> inside interfaces. While I realize this is a corner case, I thought it 
> would still be worth asking the question :-)
>
> Cheers
> Maurizio
>
> [1] - https://git.openjdk.java.net/jdk/pull/571
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/amber-spec-experts/attachments/20201117/ea8b785a/attachment.htm>


More information about the amber-spec-experts mailing list