Java8にgetDeclaredMethodsでクラスのメソッドを取得する
環境
Eclipse 2019
Java8
Windows 10 64bit
関数
public Method[] getDeclaredMethods() throws SecurityException
このClassオブジェクトによって表されるクラスまたはインタフェースのすべての宣言されたメソッドをリフレクトするMethodオブジェクトが格納された配列を返します。
これには、public、protected、デフォルト(package)アクセスおよびprivateメソッドが含まれますが、継承されたメソッドは除外されます。
戻り値:
このクラスの宣言されたすべてのメソッドを表すMethodオブジェクトの配列
使用例
package com.arkgame.bat; import java.lang.reflect.Method; public class FieldsDemo { public static void main(String[] args) { Class<User> cu = User.class; // クラスのメソッドを取得します Method[] md = cu.getDeclaredMethods(); System.out.println("クラスのメソッドを取得する結果"); // for文で取得した値を表示 for (Method t : md) { System.out.println(t); } } } //クラスUserの定義 class User { private String addr = "tokyo"; private int age = 23; /** * @return addr */ public String getAddr() { return addr; } /** * @return age */ public int getAge() { return age; } }
実行結果
クラスのメソッドを取得する結果
public int com.arkgame.bat.User.getAge()
public java.lang.String com.arkgame.bat.User.getAddr()