我有以下内容:
trait C {}
object O {
case class Foo(bar: String) extends C
}
我想从一个字符串中实例化 Foo。直到我实现了实例化 Foo,但我无法转换为 C。我正在使用:
val ob = runtimeMirror.staticModule("O.Foo")
val foo = runtimeMirror.reflectModule(ob).instance
现在 foo 是 O.Foo 的一个实例,但它不能转换为 C。
val c = foo.asInstanceOf[C]
最后一行返回:
O$foo$ cannot be cast to C