リフレクションを使用して Java でメソッドを呼び出す方法
リフレクションは Java 言語の重要な機能であり、実行時にクラス情報を動的に取得し、クラスを操作できます。 、フィールド、メソッド、コンストラクターなどを含みます。リフレクションを使用すると、コンパイル時に特定のクラスを知らなくてもクラスのメンバーを操作できるため、より柔軟で汎用性の高いコードを作成できます。この記事では、リフレクションを使用して Java でメソッドを呼び出す方法と、具体的なコード例を紹介します。
1. クラスの Class オブジェクトを取得する
Java でリフレクションを使用してメソッドを呼び出すには、まずクラスの Class オブジェクトを取得する必要があります。 Class オブジェクトは次の方法で取得できます。
2. メソッドの呼び出し
クラスの Class オブジェクトを取得した後、リフレクションを使用してクラス メソッドを呼び出すことができます。まず、メソッドのオブジェクトを取得する必要があります。メソッドのオブジェクトは、次の 2 つの方法で取得できます。
メソッドのオブジェクトを取得した後、 Method クラス () メソッドを呼び出してメソッドを呼び出します。 invoke() メソッドは、メソッドが属するオブジェクトとメソッドのパラメーターを渡す必要があり、メソッドの戻り値を返します。たとえば、次のコードは String クラスの length() メソッドを呼び出し、メソッドの戻り値を出力します。
int length = (int) lengthMethod.invoke(str);
System.out.println(length);
3. サンプル コード
import java.lang.reflect.Method; public class ReflectionExample { public static void main(String[] args) throws Exception { // 获取String类的Class对象 Class stringClass = String.class; // 获取String类的length()方法 Method lengthMethod = stringClass.getMethod("length"); // 创建一个字符串对象 String str = "Hello, Reflection!"; // 调用length()方法,并输出返回值 int length = (int) lengthMethod.invoke(str); System.out.println("字符串的长度为:" + length); } }
概要
リフレクションを通じて、クラス情報を動的に取得し、実行時にクラス メンバーを操作できます。この記事では、リフレクションを使用して Java でメソッドを呼び出す方法を紹介し、具体的なコード例を示します。この記事の紹介を通じて、読者がリフレクションの使用法をよりよく理解し、習得できることを願っています。以上がJavaでリフレクションを使用してメソッドを呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。