javaのmethod.invokeの使い方は?
Java において Method.invoke() はメソッドを動的に呼び出すメソッドであり、リフレクション メカニズムを通して指定されたメソッドを呼び出すことを可能にします。
Method.invoke()メソッドの使用方法は次のとおりです:
public Object invoke(Object obj, Object... args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException
パラメータの説明:
- obj: このメソッドを呼び出すオブジェクトを示し、メソッドが静的であれば null を渡すことができます。
- メソッドで使用するパラメータのリストを示します。複数のパラメータを渡せます。
返り値:
- invoke() メソッドは、呼び出されたメソッドによって返される値を返します。呼び出し先メソッドが void 型である場合は、null 値を返します。
ネイティブな日本語でパラフレーズ:
public class ExampleClass {
public void printMessage(String message) {
System.out.println(message);
}
}
public class Main {
public static void main(String[] args) throws Exception {
ExampleClass example = new ExampleClass();
Method method = ExampleClass.class.getMethod("printMessage", String.class);
method.invoke(example, "Hello, World!");
}
}
上の例では、まずExampleClassのインスタンスexampleを作りました。そして、リフレクション機能によってExampleClassクラス内のprintMessageというメソッドを取得し、文字列引数を渡しました。最後に、method.invoke()メソッドを使用してメソッドを呼び出し、例オブジェクトと引数を渡しました。
メソッド `invoke()` を使用するときは、`IllegalAccessException`、`IllegalArgumentException`、`InvocationTargetException` 例外を処理する必要があります。