我想在构造函数中覆盖Trait中的一个可变变量.但它会抱怨"在Int类型的特征A中覆盖变量a;变量a不能覆盖可变变量".为什么scala不允许我这样做?对此最好的做法是什么?谢谢
trait A{
var a:Int = _
}
class B(override var a:Int) extends A
Run Code Online (Sandbox Code Playgroud) 在Scala中,有四种成员修改,即def,val,lazy val,var.关于覆盖的规则看似复杂且不一致,例如,def可以被覆盖val,而不是相反.很高兴看到所有这些规则的完整列表.