리플렉션에 대한 질문이 있습니다 어떤 종류의 eval() 메소드를 사용하려고합니다. 그래서 예를 들어 호출 할 수 있습니다 자바 리플렉션을 사용하여 eval() 메소드 만들기
eval("test('woohoo')");
지금 내가 이해 자바에는 평가 방법이 없지만 반사가있다. 다음 코드를 만들었습니다 :
이것은 완벽하게 작동합니다 (물론 try, catch 블록이이 코드 주위에 있음). 테스트 메소드를 실행합니다. 그러나 나는 모두 다른 매개 변수를 가진 여러 메소드를 호출하려고합니다.
매개 변수가 무엇인지 알지 못합니다 (String.class뿐 아니라). 그러나 이것이 어떻게 가능할까요? 어떻게 메서드의 매개 변수 형식을 얻을 수 있습니까?
Class[] parameterTypes = method.getParameterTypes();
하지만 난 그냥 선택한 방법의 parameterTypes와를 반환합니다 나는 다음과 같은 방법을 알아! 다음 진술과 함께 :
Method method = cl.getMethod(s, String.class);
어떤 도움을 주실 수 있습니까?
평가 후면 방법은 어쩌면 어떻게 [JRuby를 (HTTP 볼 수 있었다, 루비의 평가처럼 보이는 : // 케나. co.kr/projects/jruby/sources)가 수행합니다. – JRL