Scala-lang リファレンス 5.5.1 と 6.6.1 は、デフォルトのパラメーターが以前に評価されたパラメーターを参照できるという印象を与えました。
class Test(val first: String, val second: String = first)
しかし、実験から、これを行う唯一の方法は次の形式を使用することのようです:
class Test(val first: String)(val second: String = first)
次に、補助コンストラクターまたは作成コンパニオン クラスを定義して、作成時に 2 番目のブラケット セットを指定しないようにします。first
この 2 番目のコンストラクターがどのように機能するのかよくわかりません。カリー化された関数のように見えるので、 とは独立して評価する必要があると推測できますsecond
が、これは正しいですか? このフォームは必要ですか、それとも最初のコンストラクターを微調整して私がやりたいことを行うために使用できるシンタックス シュガーはありますか?