私は MyObject と MyTrait を持っています:
class MyObject(private val myname: String = "") extends MyTrait {
_name = myname
def foo(myname : String) {
_name = myname
}
}
trait MyTrait {
protected var _name: String = _
def name = _name
}
これはこのようにうまく動作します
val myObject = new MyObject("abc")
println(myObject.name)
myObject.foo("def")
println(myObject.name)
版画
abc
def
予想通り。
問題は、MyTrait._name を var ではなく val にしたいことです。しかし、これをコンパイルする方法はありません。ヒントをいただければ幸いです。
よろしく、 オリバー