可変アリティ (vararg) メソッドを呼び出すときの動作を説明する Java 言語仕様 (JLS) の関連部分を探しています。
次の方法を検討してください。
public static void printVarArgs(String... args) {
System.out.println(Arrays.toString(args));
}
メソッドを次のように呼び出すと、次のようになります。
printVarArgs();
出力は次のようになります。呼び出しサイトで[]
の省略がメソッドargs
で空の配列に変換されているためです。printVarArgs
この動作を定義する JLS のポイントを探しています。私が見つけた最も近いものは15.12.4.2 Evaluate Argumentsですが、この例は示されておらず、このケースが実際に形式的/数学的な説明でカバーされているかどうかはわかりません。
vararg が省略された場合の空の配列の自動作成について説明している JLS の部分はどれですか?