목차
- 자바 소스 코드 컴파일 명령 javac 예제 이전 포스팅
- 자바 클래스 선언 및 인스턴스화 예제 이전 포스팅
- 자바 reflact 활용 클래스 객체화 예제 이전 포스팅
- 화면 출력을 위한 클래스 및 메소드 선언
- 자바 클래스 문자열, 메소드 문자열을 활용하여 호출 및 결과(Reflact)
자바 소스 코드 컴파일 명령 javac 예제 이전 포스팅
오늘 포스팅에서 다룰 주제는 이전 리플랙션 클래스 객체화에 이어 메소드를 직접 호출해보는 예제입니다. 이전 포스팅에서는 예제 시험을 위한 간단한 클래스와 메소드를 선언하여 리플랙션을 통해 동적 객체화하는 방법에 대해 알아보았습니다. 오늘은 이렇게 만들어진 객체를 통해 동적으로 메소드를 호출하는 방법에 대해 알아보겠습니다.
오늘 예제도 자바 소스 코드를 컴파일하여 실행 후 결과를 확인해야 정확한 시험이 가능합니다. 따라서 아직 자바 소스 코드 컴파일 방법을 모르신다면 아래 이전 포스팅 링크를 참고하여 학습해주세요.
2023.08.10 - [Linux] - [Linux/Java] 리눅스 우분투에서 java 컴파일 및 실행 예제(javac)
자바 클래스 선언 및 인스턴스화 예제 이전 포스팅
자바에서 클래스를 선언하는 방법과 메소드를 선언하고 객체화하는 방법에 대해 안다면 더욱 이해가 빠를 수 있습니다. 따라서 아직 클래스 구성 방법을 모른다면 아래 이전 포스팅 링크를 참고하여 학습해주세요.
2023.08.16 - [Java] - [Java/Linux] Class 선언 및 Method 만들기 예제
자바 reflact 활용 클래스 객체화 예제 이전 포스팅
마지막으로 위에서 설명한 자바 리플랙션 활용 클래스 객체화 예제가 포함된 포스팅을 참고해주세요. 오늘 포스팅에서도 해당 기능이 포함되어있지만 조금 더 자세한 내용을 파악한 후 심화 예제를 학습하는 것이 중요합니다.
아래 이전 포스팅 링크를 참고하여 학습해주세요.
2023.08.17 - [Java] - [Java/Linux] 자바 reflact 활용 클래스명으로 객체 생성 예제
화면 출력을 위한 클래스 및 메소드 선언
아래는 간단한 예제 결과를 확인하기 위해 콘솔에 출력하는 클래스와 메소드를 선언하는 예제입니다.
import java.lang.reflect.Method;
class OutputPrinter {
public void printMessage(String message) {
System.out.println(message);
}
}
자바 클래스 문자열, 메소드 문자열을 활용하여 호출 및 결과(Reflact)
아래는 리플랙션 기능을 활용하여 클래스명과 메소드명을 가지고 동적으로 호출한 예제입니다.
import java.lang.reflect.Method;
class OutputPrinter {
public void printMessage(String message) {
System.out.println(message);
}
}
public class Example {
public static void main(String[] args) {
try {
Class<?> outputPrinterClass = Class.forName("OutputPrinter");
Object outputPrinterInstance = outputPrinterClass.newInstance();
Method printMessageMethod = outputPrinterClass.getMethod("printMessage", String.class);
printMessageMethod.invoke(outputPrinterInstance, "Hello, Reflective World!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
\