在运行时从地图创建案例类

时间:2017-08-01 15:43:54

标签: java scala

我有一张地图,其中包含我要创建的案例类的字段。 我不想仅仅实现类,我想从头开始创建它并在运行时使用它。 我想要创建的类只包含字段(没有方法)。

我的第一个是在运行时解释代码将从字符串解释返回这个新类。 我们可以用toolBox做这样的事情:

import scala.reflect.runtime._
import scala.tools.reflect.ToolBox
 val cm = universe.runtimeMirror(getClass.getClassLoader)
  val tb = cm.mkToolBox()
  val myClass = tb.eval(tb.parse("class C(val a:Int, val b:Int); scala.reflect.classTag[C].runtimeClass"))

我找到了代码here。 但我不知道该怎么办。 我有myClass对象似乎是一个java.lang.Class。 由于代码行:

println(myClass.getClass.getName) 

返回:

java.lang.Class

我该怎么办? 我能设法做到我想要的吗? 如果没有其他可能性。

0 个答案:

没有答案