【发布时间】:2012-06-06 19:25:17
【问题描述】:
给定一个ev: Manifest[T],我可以使用ev.erasure.asInstanceOf[Class[T]] 得到一个Class[T]。很遗憾,ev.erasure 单独返回静态类型 Class[_]。
我可以从清单中获得Class[T] 而不进行强制转换吗?如果不是,那么有福的 Scala 创造者为什么会在 erasure 方法中使用原始返回类型?
我知道这可能对大多数代码的影响可以忽略不计,但我在一段可以说是非惯用的 Scala 代码中遇到了这个问题,我对此感到好奇。
【问题讨论】:
-
你的意思可能是
ev.erasure.asInstanceOf[Class[T]],不是吗?
标签: scala type-erasure raw-types