>Java >java지도 시간 >**문자열에 저장된 Java 코드를 실행할 수 있습니까?**

**문자열에 저장된 Java 코드를 실행할 수 있습니까?**

Susan Sarandon
Susan Sarandon원래의
2024-10-25 04:32:02376검색

**Can You Execute Java Code Stored in a String?**

문자열에 저장된 코드 실행

질문:

코드가 포함된 Java 문자열을 실행하고 있습니까? 이러한 목적으로 Java 리플렉션을 사용하는 것을 고려해 보십시오.

코드 조각:

<code class="java">String javaCode = "if(polishScreenHeight >= 200 &amp;&amp; " +
"polishScreenHeight <= 235 &amp;&amp; polishScreenWidth >= 220) { }";</code>

답변:

Java 리플렉션은 메서드를 호출하거나 클래스를 인스턴스화하는 데 사용할 수 있지만 문자열에 포함된 임의 코드를 실행하는 데 직접 사용할 수는 없습니다. 그러나 다음과 같은 몇 가지 대체 접근 방식을 사용할 수 있습니다.

1. 컴파일러 API:

컴파일러 API를 사용하면 Java 코드를 동적으로 컴파일할 수 있습니다. Java 문자열을 컴파일하고 새 클래스로 저장한 다음 새 클래스를 인스턴스화하고 실행할 수 있습니다.

2. Beanshell:

Beanshell은 Java에 통합할 수 있는 경량 스크립트 언어입니다. Java 문자열을 Beanshell에 입력으로 전달할 수 있으며, Beanshell은 내부 코드를 해석하고 실행합니다.

위 내용은 **문자열에 저장된 Java 코드를 실행할 수 있습니까?**의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.