どんなコードを書きたいかを、Javaで書くと
class A{
public A(){}
public A(int v){}
}
class B extends A{
public B() {super();}
public B(int v){super(v);}
}
になりますが、これをScalaで書こうとした場合、scalaではPrimaryConstructorを除くコンストラクターを呼び出せないため、単純に上記のようなコードを移植することは出来ません。
一応解決策を3つほど紹介
諦める
こんなコードは書かないようにしましょう。
デフォルト値を代入
デフォルト値がわかる場合は、デフォルト値を入れてやる
class A(){
def this( v: Int) = this()
}
class B(v : Int) extends A(v){
def this() = this(0)
}
複数のクラス作成
class A(){
def this( v: Int) = this()
}
class B1(v : Int) extends A(v)
class B2 extends A
Ahaa, its fastidious dialogue about this post at this place at this website, I have read all that,
返信削除so at this time me also commenting at this place.
Feel free to surf to my blog: cellulite treatment reviews