我想知道是否有可能在Scala中繼承輔助構造函數?是否有可能在Scala中繼承輔助構造函數?
我測試此代碼,它抱怨
temp.scala:18: error: too many arguments for constructor Child:()this.Child
val a = new Child(42)
^
abstract class Father {
var value: Int = 0
protected def setValue(v: Int) = {
value = v
}
protected def this(v: Int) = {
this()
setValue(v)
}
}
class Child extends Father {
}
val a = new Child(42)
但是,如果我在子類中把
protected def this(v: Int) = {
this()
setValue(v)
}
,萬事大吉。
在你提供的,「否」的證據。 – 2010-09-25 12:32:24
相關問題(和答案):http://stackoverflow.com/questions/1095329/scala-constructor-overload/1096534#1096534 – 2010-09-25 12:38:12
構造函數沒有被繼承。不在Scala中,不在Java中。不是主要的,不是次要的。 – 2010-09-25 14:28:27