「ジェネリックコールスタックのマニフェストを添付する方法」を理解することができたら(Joshuaが「Scala in Depth」の7.2.2項に書いているように)それらの線に沿ってBをインスタンス化しますか?:ネストされたジェネリックコードのマニフェストからのスカラのインスタンス化
def m1[T](implicit m: Manifest[T]): T = m.erasure.newInstance.asInstanceOf[T]
class A {
def m2[T](implicit m: Manifest[T]): T = m.erasure.newInstance.asInstanceOf[T]
def inA() {
m1[A]
m2[A]
m2[B] // Doesn't work...
}
class B
}
m1[A]
val a = new A
a.m2[A]
a.inA() // boom
ビューバインドが必要ですか?
あなたは何についてですか?エラーは何ですか?質問は何ですか? –
どのようにして、型だけから入れ子になったクラスをインスタンス化できますか?それは良い質問ですか?忘れました:私はScala 2.10.0-M1です。エラーは次のとおりです。java.lang.InstantiationException:A $ B –