Einfaches Scala Getter / Setter Override

Nehmen wir an, wir haben eine Klasse mit einer 'name'-Eigenschaft:

class SuperFoo(var name: String) 

Wenn ich dies überschreiben möchte, um zB die Anrufe zu sperren:

class SubFoo(n: String) extends SuperFoo(n) {
  val lock = new ReentrantLock
  override def name(): String =
    {
      lock.lock
      try {
        super.name
      } finally {
        lock.unlock
      }
    }
  override def name_=(arg: String): Unit = {
    lock.lock
    try {
      super.name = arg
    } finally {
      lock.unlock
    }
  }
}

Das obige erzeugt einen Kompilierungsfehler:

super may be not be used on variable name 

Irgendwelche Ideen, wie man das richtig umsetzt? (d. h. den Getter & Setter überschreiben, um Sperren um sie herum hinzuzufügen). Vielen Dank!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage