Javaでクラスのメソッド名と戻り値の型を取得する

※当サイトではアフィリエイト広告を利用しています

Javaで指定したクラスの、メソッド名と戻り値の型の一覧を取得する方法についてです。

トレースログにクラス名やメソッド名を出力したい場合などに使えると思います。

Javaでクラスのメソッド名と戻り値の型を出力するコード

Object obj = new Object();
Method[] methods = obj.getClass().getMethods();
for (Method method : methods) {
    StringBuilder sb = new StringBuilder();
    System.out.print("メソッド名[" + method.getName() + "],");
    for (Class paramType : method.getParameterTypes()) {
        if (sb.length() > 0)
            sb.append(" ");{
        }
        sb.append(paramType);
    }
    System.out.print("引数[" + sb.toString() + "],");
    System.out.println("戻り値[" + method.getReturnType() + "]");
}

クラスのメソッド名と戻り値の型を出力した結果

上記のサンプルコードの実行結果は、以下の通りです。

メソッド名[wait],引数[],戻り値[void]
メソッド名[wait],引数[long int],戻り値[void]
メソッド名[wait],引数[long],戻り値[void]
メソッド名[hashCode],引数[],戻り値[int]
メソッド名[getClass],引数[],戻り値[class java.lang.Class]
メソッド名[equals],引数[class java.lang.Object],戻り値[boolean]
メソッド名[toString],引数[],戻り値[class java.lang.String]
メソッド名[notify],引数[],戻り値[void]
メソッド名[notifyAll],引数[],戻り値[void]

コメント