java.lang.Object └net.jomura.reflect.ReflectUtil
public final class ReflectUtil
アクセス修飾子に依らずget/set,invokeするためのユーティリティクラス。
JUnitテストケース等で利用されることを想定。
メソッドの概要 | ||
---|---|---|
static
|
get(java.lang.Object target,
java.lang.String fieldName)
指定インスタンスorクラスからフィールド値を取得します。 |
|
static
|
get(java.lang.Object target,
java.lang.String fieldName,
boolean superClassSearchFlag)
指定インスタンスorクラスからフィールド値を取得します。 |
|
static java.lang.reflect.Field |
getField(java.lang.Class<?> targetClass,
java.lang.String fieldName)
クラスフィールドを取得します。 |
|
static java.lang.reflect.Field |
getField(java.lang.Class<?> targetClass,
java.lang.String fieldName,
boolean superClassSearchFlag)
クラスフィールドを取得します。 |
|
static java.lang.reflect.Method |
getMethod(java.lang.Class<?> target,
java.lang.String methodName,
java.lang.Class<?>[] paramClasses)
指定クラスから指定メソッド名・引数の型配列を持つメソッドインスタンスを取得します。 |
|
static java.lang.reflect.Method |
getMethod(java.lang.Class<?> target,
java.lang.String methodName,
java.lang.Class<?>[] paramClasses,
boolean superClassSearchFlag)
指定クラスから指定メソッド名・引数の型配列を持つメソッドインスタンスを取得します。 |
|
static
|
invoke(java.lang.Object target,
java.lang.String methodName,
java.lang.Class<?>[] paramClasses,
java.lang.Object[] paramValues)
対象インスタンスorクラスのメソッドを実行します。 |
|
static
|
invoke(java.lang.Object target,
java.lang.String methodName,
java.lang.Class<?>[] paramClasses,
java.lang.Object[] paramValues,
boolean superClassSearchFlag)
対象インスタンスorクラスのメソッドを実行します。 |
|
static void |
set(java.lang.Object target,
java.lang.String fieldName,
java.lang.Object value)
対象インスタンスorクラスのフィールドに値を設定します。 |
|
static void |
set(java.lang.Object target,
java.lang.String fieldName,
java.lang.Object value,
boolean superClassSearchFlag)
対象インスタンスorクラスのフィールドに値を設定します。 |
クラス java.lang.Object から継承されたメソッド |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
メソッドの詳細 |
---|
public static <T> T get(java.lang.Object target, java.lang.String fieldName)
T
- 戻り値の型変数target
- 取得対象のインスタンス or クラスfieldName
- 取得するフィールドの名称
getField(Class, String, boolean)
public static <T> T get(java.lang.Object target, java.lang.String fieldName, boolean superClassSearchFlag)
T
- 戻り値の型変数target
- 取得対象のインスタンス or クラスfieldName
- 取得するフィールドの名称superClassSearchFlag
- スーパークラス検索フラグ
getField(Class, String, boolean)
public static java.lang.reflect.Field getField(java.lang.Class<?> targetClass, java.lang.String fieldName)
targetClass
- 対象クラスfieldName
- 取得フィールド名
public static java.lang.reflect.Field getField(java.lang.Class<?> targetClass, java.lang.String fieldName, boolean superClassSearchFlag)
targetClass
- 対象クラスfieldName
- 取得フィールド名superClassSearchFlag
- スーパークラス検索フラグ
public static java.lang.reflect.Method getMethod(java.lang.Class<?> target, java.lang.String methodName, java.lang.Class<?>[] paramClasses)
target
- 対象クラスmethodName
- 取得メソッド名paramClasses
- 取得メソッド引数の型配列。引数が無い場合はnullまたはサイズ0の配列
public static java.lang.reflect.Method getMethod(java.lang.Class<?> target, java.lang.String methodName, java.lang.Class<?>[] paramClasses, boolean superClassSearchFlag)
target
- 対象クラスmethodName
- 取得メソッド名paramClasses
- 取得メソッド引数の型配列。引数が無い場合はnullまたはサイズ0の配列superClassSearchFlag
- スーパークラス検索フラグ
public static <T> T invoke(java.lang.Object target, java.lang.String methodName, java.lang.Class<?>[] paramClasses, java.lang.Object[] paramValues)
T
- 戻り値の型変数target
- 対象インスタンスorクラスmethodName
- 実行メソッド名paramClasses
- 実行メソッドの引数型配列。引数がない場合nullを設定。paramValues
- メソッド実行時の引数に設定する値配列。引数がない場合nullを設定。
getMethod(Class, String, Class[], boolean)
public static <T> T invoke(java.lang.Object target, java.lang.String methodName, java.lang.Class<?>[] paramClasses, java.lang.Object[] paramValues, boolean superClassSearchFlag)
T
- 戻り値の型変数target
- 対象インスタンスorクラスmethodName
- 実行メソッド名paramClasses
- 実行メソッドの引数型配列。引数がない場合nullを設定。paramValues
- メソッド実行時の引数に設定する値配列。引数がない場合nullを設定。superClassSearchFlag
- スーパークラス検索フラグ
getMethod(Class, String, Class[], boolean)
public static void set(java.lang.Object target, java.lang.String fieldName, java.lang.Object value)
target
- 設定対象のインスタンスorクラスfieldName
- 設定するフィールドの名称value
- 設定する値getField(Class, String, boolean)
public static void set(java.lang.Object target, java.lang.String fieldName, java.lang.Object value, boolean superClassSearchFlag)
target
- 設定対象のインスタンスorクラスfieldName
- 設定するフィールドの名称superClassSearchFlag
- スーパークラス検索フラグvalue
- 設定する値getField(Class, String, boolean)