执行存储在字符串中的代码
问题:
是否可以将Java String包含代码并执行它?考虑使用 Java 反射来实现此目的。
代码片段:
<code class="java">String javaCode = "if(polishScreenHeight >= 200 && " + "polishScreenHeight <= 235 && polishScreenWidth >= 220) { }";</code>
答案:
虽然 Java 反射可以用于调用方法或实例化类,它不能直接用于执行字符串中包含的任意代码。但是,有几种替代方法可用:
1。编译器 API:
编译器 API 允许您动态编译 Java 代码。您可以编译 Java String,将其保存为新类,然后实例化并执行新类。
2. Beanshell:
Beanshell 是一种可以集成到 Java 中的轻量级脚本语言。您可以将 Java 字符串作为输入传递给 Beanshell,Beanshell 将解释并执行其中的代码。
以上是**你能执行存储在字符串中的Java代码吗?**的详细内容。更多信息请关注PHP中文网其他相关文章!