public abstract class LdiReflectionUtil extends Object
| 修飾子 | コンストラクタと説明 |
|---|---|
protected |
LdiReflectionUtil()
インスタンスを構築します。
|
| 修飾子とタイプ | メソッドと説明 |
|---|---|
static <T> Class<T> |
forName(String className)
現在のスレッドのコンテキストクラスローダを使って、 指定された文字列名を持つクラスまたはインタフェースに関連付けられた、
Classオブジェクトを返します。 |
static <T> Class<T> |
forName(String className,
ClassLoader loader)
指定されたクラスローダを使って、 指定された文字列名を持つクラスまたはインタフェースに関連付けられた
Classオブジェクトを返します。 |
static <T> Class<T> |
forNameNoException(String className)
現在のスレッドのコンテキストクラスローダを使って、 指定された文字列名を持つクラスまたはインタフェースに関連付けられた、
Classオブジェクトを返します。 |
static <T> Class<T> |
forNameNoException(String className,
ClassLoader loader)
指定されたクラスローダを使って、 指定された文字列名を持つクラスまたはインタフェースに関連付けられた、
Classオブジェクトを返します。 |
static <T> Constructor<T> |
getConstructor(Class<T> clazz,
Class<?>... argTypes) |
static <T> Constructor<T> |
getDeclaredConstructor(Class<T> clazz,
Class<?>... argTypes) |
static Field |
getDeclaredField(Class<?> clazz,
String name)
|
static Method |
getDeclaredMethod(Class<?> clazz,
String name,
Class<?>... argTypes)
|
static Class<?> |
getElementTypeOfCollection(Type parameterizedCollection)
パラメタ化されたコレクションの要素型を返します。
|
static Class<?> |
getElementTypeOfCollectionFromFieldType(Field field)
指定されたフィールドのパラメタ化されたコレクションの要素型を返します。
|
static Class<?> |
getElementTypeOfCollectionFromParameterType(Method method,
int parameterPosition)
指定されたメソッドの引数型として宣言されているパラメタ化されたコレクションの要素型を返します。
|
static Class<?> |
getElementTypeOfCollectionFromReturnType(Method method)
指定されたメソッドの戻り値型として宣言されているパラメタ化されたコレクションの要素型を返します。
|
static Class<?> |
getElementTypeOfList(Type parameterizedList)
パラメタ化されたリストの要素型を返します。
|
static Class<?> |
getElementTypeOfListFromFieldType(Field field)
指定されたフィールドのパラメタ化されたリストの要素型を返します。
|
static Class<?> |
getElementTypeOfListFromParameterType(Method method,
int parameterPosition)
指定されたメソッドの引数型として宣言されているパラメタ化されたリストの要素型を返します。
|
static Class<?> |
getElementTypeOfListFromReturnType(Method method)
指定されたメソッドの戻り値型として宣言されているパラメタ化されたリストの要素型を返します。
|
static Class<?> |
getElementTypeOfSet(Type parameterizedSet)
パラメタ化されたセットの要素型を返します。
|
static Class<?> |
getElementTypeOfSetFromFieldType(Field field)
指定されたフィールドのパラメタ化されたセットの要素型を返します。
|
static Class<?> |
getElementTypeOfSetFromParameterType(Method method,
int parameterPosition)
指定されたメソッドの引数型として宣言されているパラメタ化されたセットの要素型を返します。
|
static Class<?> |
getElementTypeOfSetFromReturnType(Method method)
指定されたメソッドの戻り値型として宣言されているパラメタ化されたセットの要素型を返します。
|
static Field |
getField(Class<?> clazz,
String name)
|
static Method |
getMethod(Class<?> clazz,
String name,
Class<?>... argTypes)
|
static <T> T |
getStaticValue(Field field)
指定されたオブジェクトについて、
Fieldによって表されるstaticフィールドの値を返します。 |
static <T> T |
getValue(Field field,
Object target)
指定されたオブジェクトについて、
Fieldによって表されるフィールドの値を返します。 |
static <T> T |
invoke(Method method,
Object target,
Object... args)
Methodオブジェクトによって表される基本となるメソッドを、指定したオブジェクトに対して指定したパラメータで呼び出します。 |
static <T> T |
invokeStatic(Method method,
Object... args)
Methodオブジェクトによって表される基本となるstaticメソッドを、指定したパラメータで呼び出します。 |
static <T> T |
newInstance(Class<T> clazz)
指定されたクラスのデフォルトコンストラクタで、クラスの新しいインスタンスを作成および初期化します。
|
static <T> T |
newInstance(Constructor<T> constructor,
Object... args)
指定された初期化パラメータで、コンストラクタの宣言クラスの新しいインスタンスを作成および初期化します。
|
static void |
setStaticValue(Field field,
Object value)
Fieldオブジェクトによって表されるstaticフィールドを、指定された新しい値に設定します。 |
static void |
setValue(Field field,
Object target,
Object value)
Fieldオブジェクトによって表される指定されたオブジェクト引数のフィールドを、指定された新しい値に設定します。 |
public static <T> Class<T> forName(String className) throws ClassNotFoundRuntimeException
Classオブジェクトを返します。T - Classオブジェクトが表すクラスclassName - 要求するクラスの完全修飾名ClassオブジェクトClassNotFoundRuntimeException - クラスが見つからなかった場合Class.forName(String)public static <T> Class<T> forName(String className, ClassLoader loader) throws ClassNotFoundRuntimeException
Classオブジェクトを返します。T - Classオブジェクトが表すクラスclassName - 要求するクラスの完全修飾名loader - クラスのロード元である必要があるクラスローダClassオブジェクトClassNotFoundRuntimeException - クラスが見つからなかった場合Class.forName(String, boolean, ClassLoader)public static <T> Class<T> forNameNoException(String className)
Classオブジェクトを返します。
クラスが見つからなかった場合はnullを返します。
T - Classオブジェクトが表すクラスclassName - 要求するクラスの完全修飾名ClassオブジェクトClass.forName(String)public static <T> Class<T> forNameNoException(String className, ClassLoader loader)
Classオブジェクトを返します。
クラスが見つからなかった場合はnullを返します。
T - Classオブジェクトが表すクラスclassName - 要求するクラスの完全修飾名loader - クラスのロード元である必要があるクラスローダClassオブジェクトClass.forName(String)public static <T> Constructor<T> getConstructor(Class<T> clazz, Class<?>... argTypes) throws NoSuchConstructorRuntimeException
public static <T> Constructor<T> getDeclaredConstructor(Class<T> clazz, Class<?>... argTypes) throws NoSuchConstructorRuntimeException
public static Field getField(Class<?> clazz, String name) throws NoSuchFieldRuntimeException
clazz - クラスのClassオブジェクトname - フィールド名nameで指定されたこのクラスのFieldオブジェクトNoSuchFieldRuntimeException - 指定された名前のフィールドが見つからない場合Class.getField(String)public static Field getDeclaredField(Class<?> clazz, String name) throws NoSuchFieldRuntimeException
clazz - クラスのClassオブジェクトname - フィールド名nameで指定されたこのクラスのFieldオブジェクトNoSuchFieldRuntimeException - 指定された名前のフィールドが見つからない場合Class.getDeclaredField(String)public static Method getMethod(Class<?> clazz, String name, Class<?>... argTypes) throws NoSuchMethodRuntimeException
clazz - クラスのClassオブジェクトname - メソッドの名前argTypes - パラメータのリストnameおよびargTypesと一致するMethodオブジェクトNoSuchMethodRuntimeException - 一致するメソッドが見つからない場合Class.getMethod(String, Class[])public static Method getDeclaredMethod(Class<?> clazz, String name, Class<?>... argTypes) throws NoSuchMethodRuntimeException
clazz - クラスのClassオブジェクトname - メソッドの名前argTypes - パラメータのリストnameおよびargTypesと一致するMethodオブジェクトNoSuchMethodRuntimeException - 一致するメソッドが見つからない場合Class.getDeclaredMethod(String, Class[])public static <T> T newInstance(Class<T> clazz) throws InstantiationRuntimeException, IllegalAccessRuntimeException
T - Classオブジェクトが表すクラスclazz - クラスを表すClassオブジェクトInstantiationRuntimeException - 基本となるコンストラクタを宣言するクラスがabstractクラスを表す場合IllegalAccessRuntimeException - 実パラメータ数と仮パラメータ数が異なる場合、 プリミティブ引数のラップ解除変換が失敗した場合、 またはラップ解除後、
メソッド呼び出し変換によってパラメータ値を対応する仮パラメータ型に変換できない場合、
このコンストラクタが列挙型に関連している場合Constructor.newInstance(Object[])public static <T> T newInstance(Constructor<T> constructor, Object... args) throws InstantiationRuntimeException, IllegalAccessRuntimeException
T - コンストラクタの宣言クラスconstructor - コンストラクタargs - コンストラクタ呼び出しに引数として渡すオブジェクトの配列InstantiationRuntimeException - 基本となるコンストラクタを宣言するクラスがabstractクラスを表す場合IllegalAccessRuntimeException - 実パラメータ数と仮パラメータ数が異なる場合、 プリミティブ引数のラップ解除変換が失敗した場合、 またはラップ解除後、
メソッド呼び出し変換によってパラメータ値を対応する仮パラメータ型に変換できない場合、
このコンストラクタが列挙型に関連している場合Constructor.newInstance(Object[])public static <T> T getValue(Field field, Object target) throws IllegalAccessRuntimeException
Fieldによって表されるフィールドの値を返します。T - フィールドの型field - フィールドtarget - 表現されるフィールド値の抽出元オブジェクトobj内で表現される値IllegalAccessRuntimeException - 基本となるフィールドにアクセスできない場合Field.get(Object)public static <T> T getStaticValue(Field field) throws IllegalAccessRuntimeException
Fieldによって表されるstaticフィールドの値を返します。T - フィールドの型field - フィールドstaticフィールドで表現される値IllegalAccessRuntimeException - 基本となるフィールドにアクセスできない場合Field.get(Object)public static void setValue(Field field, Object target, Object value) throws IllegalAccessRuntimeException
Fieldオブジェクトによって表される指定されたオブジェクト引数のフィールドを、指定された新しい値に設定します。field - フィールドtarget - フィールドを変更するオブジェクトvalue - 変更中のtargetの新しいフィールド値IllegalAccessRuntimeException - 基本となるフィールドにアクセスできない場合Field.set(Object, Object)public static void setStaticValue(Field field, Object value) throws IllegalAccessRuntimeException
Fieldオブジェクトによって表されるstaticフィールドを、指定された新しい値に設定します。field - フィールドvalue - staticフィールドの新しい値IllegalAccessRuntimeException - 基本となるフィールドにアクセスできない場合Field.set(Object, Object)public static <T> T invoke(Method method, Object target, Object... args) throws IllegalAccessRuntimeException, InvocationTargetRuntimeException
Methodオブジェクトによって表される基本となるメソッドを、指定したオブジェクトに対して指定したパラメータで呼び出します。T - メソッドの戻り値の型method - メソッドtarget - 基本となるメソッドの呼び出し元のオブジェクトargs - メソッド呼び出しに使用される引数argsを使用してobjにディスパッチした結果IllegalAccessRuntimeException - このMethodオブジェクトがJava言語アクセス制御を実施し、
基本となるメソッドにアクセスできない場合InvocationTargetRuntimeException - 基本となるメソッドが例外をスローする場合Method.invoke(Object, Object[])public static <T> T invokeStatic(Method method, Object... args) throws IllegalAccessRuntimeException, InvocationTargetRuntimeException
Methodオブジェクトによって表される基本となるstaticメソッドを、指定したパラメータで呼び出します。T - メソッドの戻り値の型method - メソッドargs - メソッド呼び出しに使用される引数staticメソッドを、パラメータargsを使用してディスパッチした結果IllegalAccessRuntimeException - このMethodオブジェクトがJava言語アクセス制御を実施し、
基本となるメソッドにアクセスできない場合InvocationTargetRuntimeException - 基本となるメソッドが例外をスローする場合Method.invoke(Object, Object[])public static Class<?> getElementTypeOfCollection(Type parameterizedCollection)
parameterizedCollection - パラメタ化されたコレクションの型public static Class<?> getElementTypeOfCollectionFromFieldType(Field field)
field - フィールドpublic static Class<?> getElementTypeOfCollectionFromParameterType(Method method, int parameterPosition)
method - メソッドparameterPosition - パラメタ化されたコレクションが宣言されているメソッド引数の位置public static Class<?> getElementTypeOfCollectionFromReturnType(Method method)
method - メソッドpublic static Class<?> getElementTypeOfList(Type parameterizedList)
parameterizedList - パラメタ化されたリストの型public static Class<?> getElementTypeOfListFromFieldType(Field field)
field - フィールドpublic static Class<?> getElementTypeOfListFromParameterType(Method method, int parameterPosition)
method - メソッドparameterPosition - パラメタ化されたリストが宣言されているメソッド引数の位置public static Class<?> getElementTypeOfListFromReturnType(Method method)
method - メソッドpublic static Class<?> getElementTypeOfSet(Type parameterizedSet)
parameterizedSet - パラメタ化されたセットの型public static Class<?> getElementTypeOfSetFromFieldType(Field field)
field - フィールドpublic static Class<?> getElementTypeOfSetFromParameterType(Method method, int parameterPosition)
method - メソッドparameterPosition - パラメタ化されたセットが宣言されているメソッド引数の位置Copyright © 2015 The DBFlute Project. All rights reserved.