我之前使用这个人为编造的代码
record Foo(int bar[]) {}
现在,随着Java 16中记录的正式发布,使用C风格数组符号的代码不再编译。以下是来自jshell的输出:
jshell> record Foo(int bar[]) {}
| Error:
| legacy array notation not allowed on record components
| record Foo(int bar[]) {}
| ^
Java 15中为什么能编译通过,这是一个bug吗?出于好奇,为什么它不在records中得到支持,而在Java的其他任何地方都得到了支持?
我正在使用Adoptium(基于OpenJDK)中的javac
。