Joshua Bloch の 'Effective Java' を読んでいます。項目 2 では、コンストラクターで複数のパラメーターを処理するときに Builder パターンを使用する利点について言及しています。従来のコンストラクターとこのパターンの間の複数の var-args の違いを見るまでは、すべて問題ありません。だから、私はそれに関していくつかの疑問があります:
- ビルダーパターンはどのように複数の var-args を許可しますか?
- 従来のコンストラクターで var-arg が 1 つしか許可されないのはなぜですか? (おそらく、両方の定義されたデータ型が同じ場合、複数の var-args がある場合にあいまいさが生じるという事実によるものですが、これがその背後にある正しい理由であるかどうかはわかりません。)
ただし、コードで var-args を使用したことはありませんが、その使用法は知っています。それでも、上記のステートメントの背後にある理由を理解できません。どんな助けでも大歓迎です。