可能重复:
将字符串转换为代码
运行包含在字符串中的一段代码
有没有办法将变量(字符串)变成一段代码?我的字符串必须是可变的(非静态的)如果你能简单地解释一下那就太好了:D
可能重复:
将字符串转换为代码
运行包含在字符串中的一段代码
有没有办法将变量(字符串)变成一段代码?我的字符串必须是可变的(非静态的)如果你能简单地解释一下那就太好了:D
我假设您想String
用一些 Java 语句创建一个对象并像执行方法一样执行内容。
不,这是不可能的,因为这意味着 java 是一种解释型编程语言。事实并非如此。
您可以将该行与某种类模板(在另一个字符串上)合并,将其存储到一个文件中,使用 jdk 编译它(使用`Runtime.exec 调用 javac)并使用自定义类加载器加载类,然后反映该方法并希望最好。
使用相当新的 Java Compiler API 有一种相当复杂的方法,但我想,这远远超出了您的需求。(而且必须有一些更复杂的技巧,因为 Eclipse IDE 提供了允许执行 Java 语句的视图。)