2
我会如何使用变量作为类型?例如:Scala:包含类型的变量
scala> class A
defined class A
scala> class B extends A
defined class B
scala> def convert[F, T](from: F): T = from.asInstanceOf[T]
convert: [F, T](from: F)T
scala> val b = new B
b: B = [email protected]
scala> convert[B, A](b)
res18: A = [email protected]
这工作正常。但我有兴趣做:
scala> val aType = classOf[A]
aType: Class[A] = class A
scala> convert[B, aType](b)
<console>:12: error: not found: type aType
convert[B, aType](b)
我怎么会做这种没有初始化的对象,并在那里使用obj.type
?我怀疑我需要使用一些反射功能(可能是TypeTag
?),但我无法找到在这里使用正确的东西。
谢谢!
为什么我继续没有看到这些...非常感谢! – Emre