2011-07-06 11 views
1

オブジェクト内に動的に存在するメソッドとパブリックプロパティのリストを見つける必要があります。クラスの定義にアクセスすることはできません。オブジェクトへの参照を与えられたオブジェクトのメソッドのリストを取得することは可能ですか?もしそうなら、どうですか?オブジェクトやクラスのメソッドのリストを取得するには?

+0

再帰の答え:あなたはrelfexionを '使用する方法を参照してください)(someObject.getClass上の反射を使用する; O)' – SteeveDroz

答えて

6

getClass()を参照してクラスを取得できます。そこから、getMethods()、getDeclaredMethods()などを呼び出すことができます。メソッドを示すサンプルコードjava.lang.String

import java.lang.reflect.Method;

public class Test { 
    public static void main(String[] args) { 
     showMethods("hello"); 
    } 

    private static void showMethods(Object target) { 
     Class<?> clazz = target.getClass(); 

     for (Method method : clazz.getMethods()) { 
      System.out.println(method.getName()); 
     } 
    } 
} 

などのメソッドを取得する方法のより多くのオプションのためのClassためのドキュメントを見

1

は、Javaのリフレクションでは良い導入にここを見て:

http://tutorials.jenkov.com/java-reflection/index.html

反射とすることができます与えられたクラスのためのすべてのメソッドとオブジェクトを取得する(より多くの機能の隣に)

関連する問題