私はなぜ関数パラメータとクラスで使用される名前に同じ名前を使用できないのだろうかと思います。以下の例を参照してください。スカラクラス変数名非表示メソッドパラメータ名
scala> class Person() {var name = "bob" }
defined class Person
scala> val p = new Person
p: Person = [email protected]
scala> p.name
res0: java.lang.String = bob
scala> p.name = "alice"
scala> p.name
res1: java.lang.String = alice
scala> def chngName(name:String) = new Person() {this.name= name}
chngName: (name: String)Person
scala> val p = chngName("aa")
p: Person = [email protected]
scala> p.name
res2: java.lang.String = bob
scala> def chngName(n:String) = new Person() {name= n}
chngName: (n: String)Person
scala> val p = chngName("aa")
p: Person = [email protected]
scala> p.name
res3: java.lang.String = aa
もちろん、私は別の名前を使用することができますが、私は、なぜ私はできないか、私はここに欠場しています何かがあるにしたいです。ありがとう
この例では、 'class Person(var name:String =" bob ")'を定義し、bobを得るために 'new Person'を書くか、カスタム名用の新しいPerson( "aa") '。 –