为什么这个奇怪的方法返回类型如何编译?

noo*_*der 2 java language-lawyer

以下方法的返回类型为int[][]。请注意,其中一个[]位于的右侧()

为什么起作用,这种行为叫什么?

int[] numbers () [] {
    return null;
}
Run Code Online (Sandbox Code Playgroud)

JB *_*zet 6

JLS

返回数组的方法的声明允许将表示数组类型的部分或全部括号对放在形式参数列表之后。支持此语法以与Java编程语言的早期版本兼容。强烈建议在新代码中不要使用此语法。