可能重复:
Scala 中的“eval”
我知道 scala 是一种编译语言,但我也知道我可以将类动态加载到 jvm 中,并且我可以在运行时调用 scala 编译器,最后但并非最不重要的是,我也有一个很棒的 repl,所以将 scala 作为脚本语言应该是可能的。
所以我需要运行一些任务:
简单解读:
val src = """ println("Hello World") """
interpret(src)
调用外部函数:
object A{
def foo =
println("Hello World")
}
val src = """ A.foo """
interpret(src)
实现功能:
trait T{
def foo:String
}
val src = """ class A extends T{ def foo = "Hello World" } """
interpret(src)
val t = loadClassAndCreatInstance.asInstanceOf[T]
println(t.foo)
能解决我所有的问题会很棒。