public class ReflectionUtil
extends java.lang.Object
| Constructor and Description |
|---|
ReflectionUtil() |
| Modifier and Type | Method and Description |
|---|---|
static java.lang.Class<?> |
failSafeGetClass(java.lang.String name) |
static java.lang.reflect.Field |
failSafeGetField(java.lang.Class<?> clazz,
java.lang.String fieldName)
Get a field from a class, and print an error message if it fails.
|
static void |
failSafeSetValue(java.lang.Class<?> clazz,
java.lang.Object object,
java.lang.String name,
java.lang.Object value)
Set a field value, and print an error message if it fails.
|
static java.lang.reflect.Method |
findMethod(java.lang.Class<?> clazz,
java.lang.String[] methodNames,
java.lang.Class<?>... parameterTypes) |
static java.lang.reflect.Field |
getFieldAccessible(java.lang.Class<?> clazz,
java.lang.String fieldName)
Gets and field from the
fieldCache or directly and makes it accessible. |
static java.lang.reflect.Field |
getFieldAndCache(java.lang.Class<?> clazz,
java.lang.String fieldName) |
static java.lang.reflect.Method |
getMethod(java.lang.Class<?> clazz,
java.lang.String methodName,
java.lang.Class<?>... parameterTypes)
Recursively search for a method in the class and its superclasses.
|
static void |
removeFinal(java.lang.reflect.Field field)
Remove the final modifier from a field.
|
static void |
setValue(java.lang.Class<?> clazz,
java.lang.Object object,
java.lang.String name,
java.lang.Object value)
Unsafe wrapper for value setting which bypasses final checks.
|
static void |
setValue(java.lang.Class<?> clazz,
java.lang.Object object,
java.lang.String name,
java.lang.Object value,
boolean isFinal) |
public static java.lang.reflect.Method findMethod(java.lang.Class<?> clazz,
java.lang.String[] methodNames,
java.lang.Class<?>... parameterTypes)
public static java.lang.reflect.Method getMethod(java.lang.Class<?> clazz,
java.lang.String methodName,
java.lang.Class<?>... parameterTypes)
clazz - The class to search inmethodName - The name of the methodparameterTypes - The parameter types of the methodpublic static java.lang.reflect.Field getFieldAndCache(java.lang.Class<?> clazz,
java.lang.String fieldName)
public static java.lang.reflect.Field getFieldAccessible(java.lang.Class<?> clazz,
java.lang.String fieldName)
fieldCache or directly and makes it accessible.clazz - The classfieldName - The field namepublic static java.lang.reflect.Field failSafeGetField(java.lang.Class<?> clazz,
java.lang.String fieldName)
clazz - The classfieldName - The field namepublic static void setValue(java.lang.Class<?> clazz,
java.lang.Object object,
java.lang.String name,
java.lang.Object value,
boolean isFinal)
throws java.lang.IllegalAccessException
java.lang.IllegalAccessExceptionpublic static void removeFinal(java.lang.reflect.Field field)
field - The fieldpublic static void setValue(java.lang.Class<?> clazz,
java.lang.Object object,
java.lang.String name,
java.lang.Object value)
throws java.lang.IllegalAccessException
clazz - The classobject - The objectname - The field namevalue - The valuejava.lang.IllegalAccessException - If the field cannot be accessedpublic static void failSafeSetValue(java.lang.Class<?> clazz,
java.lang.Object object,
java.lang.String name,
java.lang.Object value)
clazz - The classobject - The objectname - The field namevalue - The valuepublic static java.lang.Class<?> failSafeGetClass(java.lang.String name)