Java 中字串的動態程式碼執行
本文深入研究了執行儲存在 String 變數中的 Java 程式碼的查詢。能否將這段程式碼轉換為 Java 語句並動態執行?
動態程式碼編譯和執行
解決此問題的一種方法是利用 Java 的編譯器 API。這允許您即時編譯 Java 程式碼。以下是所涉及步驟的簡要概述:
替代:Beanshell
或者,您可以考慮使用 Beanshell 來解釋腳本語言。 Beanshell 提供了一個用於從字串執行 Java 程式碼的無縫介面。以下是使用 Beanshell 的方法:
實作細節
下面的程式碼片段示範了使用Beanshell 動態執行Java 程式碼:
<code class="java">import bsh.Interpreter; public class DynamicCodeExecution { public static void main(String[] args) throws Exception { // Java code stored in a String String javaCode = "if(polishScreenHeight >= 200 && " + "polishScreenHeight <= 235 && polishScreenWidth >= 220) { }"; // Create Beanshell interpreter Interpreter interpreter = new Interpreter(); // Set the code to be executed interpreter.eval(javaCode); } }</code>
使用這種方法, String 中的Java 程式碼將會動態執行,讓您在執行時間評估條件或執行操作。
以上是如何從字串變數執行 Java 程式碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!