【发布时间】:2013-05-01 02:35:36
【问题描述】:
我想在构造函数中覆盖 Trait 中的一个可变变量。但它会抱怨“在 Int 类型的特征 A 中覆盖变量 a;变量 a 不能覆盖可变变量”。为什么scala不允许我这样做?对此有什么最佳实践吗?谢谢
trait A{
var a:Int = _
}
class B(override var a:Int) extends A
【问题讨论】:
-
您是否简化了您的真实案例以提出问题?正如许多答案所指出的那样,用另一个具有相同名称和类型的 var 覆盖是非常没用的。
标签: scala overriding