私は 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 にしたいことです。しかし、これをコンパイルする方法はありません。ヒントをいただければ幸いです。
よろしく、 オリバー