β

从Scala(2.10)类型的标签或符号获取Java类的任何方法?

Harries Blog™ 69 阅读

看起来这让我很近,但(a)不完全(见下文),(b)使用字符串表示的名字感觉像一个 黑客

scala> import scala.reflect.runtime.universe._import scala.reflect.runtime.universe._

scala> val t = typeOf[Int]
t: reflect.runtime.universe.Type = Int

scala> t.typeSymbol.asClass.fullName
res0: String = scala.Int

scala> object X { class Y } 
defined module X

scala> val y = typeOf[X.Y]
y: reflect.runtime.universe.Type = X.Y

scala> Class.forName(y.typeSymbol.asClass.fullName)
java.lang.ClassNotFoundException: X.Y [...]

我是否缺少一些更直接的访问此信息的方法?或者是最好的,如果我还需要一些类的信息,只是为了保持 Java类 信息的并行集合? (啊!)

作者:Harries Blog™
追心中的海,逐世界的梦

发表评论