2017-09-10 5 views
-2

私はリフレクションでメソッドにアクセスしようとしていますが、関数getMethod()にはパラメータ型のクラスが必要です。このパラメータはClassオブジェクトですが、ArrayList<String>タイプから取得する方法がわかりません。ここで私はString.classを変更したいと思う私の現在のコードは、次のとおりです。ArrayList型のクラスオブジェクトを取得する方法は?

Method m = o.getClass().getMethod(method, String.class); 
+2

を使用してMethodを得ることができます呼び出したいメソッドのコード?メソッドの定義 – azro

+0

申し訳ありませんが、あなたの質問は不明です(少なくとも私にとっては)。 「The parameter is Class object」の場合、必要なパラメータを表す型としてClass.classを渡します。 "* ArrayList タイプ*から取得する方法がわかりません。" ArrayList とは何が関係していますか? – Pshemo

+0

'method'は単にメソッド名を含むStringです。このメソッドのプロトタイプは、例として、次のようになります: 'public static void Method(ArrayList options);'。これは、String型をパラメータとして使用する場合に機能しますが、この場合はArrayListを使用する方がはるかに好きです。 – Sergix

答えて

1

あなたのメソッドのシグネチャについて

public static void method(ArrayList<String> options); 

あなたが私たちに与えることができますあなたは、単に

Method m = o.getClass().getMethod(method, ArrayList.class); 
+1

ありがとう!!それはうまくいった。 – Sergix

関連する問題