添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
谦和的电池  ·  python 如何使用 selenium ...·  3 月前    · 
温文尔雅的生姜  ·  How to install ...·  3 月前    · 
温文尔雅的豆芽  ·  CriteriaQueryImpl ...·  6 月前    · 
public final class ReflectionUtil extends Object
Utility class for performing common reflective operations.
Since:
Gets the default (no-arg) constructor for a given class.
static Object
Gets the value of a Field , making it accessible if required.
static Object
Gets the value of a static Field , making it accessible if required.
static <T> T
Constructs a new T object using the default constructor of its class.
static <T extends AccessibleObject & Member >
boolean
isAccessible (T member)
Indicates whether or not a Member is both public and is contained in a public class.
static void
Makes a Field accessible if it is not public or if it is final.
static <T extends AccessibleObject & Member >
void
makeAccessible (T member)
Makes a Member accessible if the member is not public.
static void
Sets the value of a Field , making it accessible if required.
static void
Sets the value of a static Field , making it accessible if required.

isAccessible

public static <T extends AccessibleObject & Member > boolean isAccessible (T member)
Indicates whether or not a Member is both public and is contained in a public class.
Type Parameters:
T - type of the object whose accessibility to test
Parameters:
member - the Member to check for public accessibility (must not be null ).
Returns:
true if member is public and contained in a public class.
Throws:
NullPointerException - if member is null .

makeAccessible

public static <T extends AccessibleObject & Member > void makeAccessible (T member)
Makes a Member accessible if the member is not public.
Type Parameters:
T - type of the object to make accessible
Parameters:
member - the Member to make accessible (must not be null ).
Throws:
NullPointerException - if member is null .

makeAccessible

public static void makeAccessible ( Field field)
Makes a Field accessible if it is not public or if it is final.

Note that using this method to make a final field writable will most likely not work very well due to compiler optimizations and the like.

Parameters:
field - the Field to make accessible (must not be null ).
Throws:
NullPointerException - if field is null .
public static Object getFieldValue ( Field field, Object instance)
Gets the value of a Field , making it accessible if required.
Parameters:
field - the Field to obtain a value from (must not be null ).
instance - the instance to obtain the field value from or null only if the field is static.
Returns:
the value stored by the field.
Throws:
NullPointerException - if field is null , or if instance is null but field is not static .
See Also:
  • Field.get(Object)
  • getStaticFieldValue

    public static Object getStaticFieldValue ( Field field)
    Gets the value of a static Field , making it accessible if required.
    Parameters:
    field - the Field to obtain a value from (must not be null ).
    Returns:
    the value stored by the static field.
    Throws:
    NullPointerException - if field is null , or if field is not static .
    See Also:
  • Field.get(Object)
  • Object instance, Object value)
    Sets the value of a Field , making it accessible if required.
    Parameters:
    field - the Field to write a value to (must not be null ).
    instance - the instance to write the value to or null only if the field is static.
    value - the (possibly wrapped) value to write to the field.
    Throws:
    NullPointerException - if field is null , or if instance is null but field is not static .
    See Also:
  • Field.set(Object, Object)
  • setStaticFieldValue

    public static void setStaticFieldValue ( Field field, Object value)
    Sets the value of a static Field , making it accessible if required.
    Parameters:
    field - the Field to write a value to (must not be null ).
    value - the (possibly wrapped) value to write to the field.
    Throws:
    NullPointerException - if field is null , or if field is not static .
    See Also:
  • Field.set(Object, Object)
  • getDefaultConstructor

    public static <T> Constructor <T> getDefaultConstructor ( Class <T> clazz)
    Gets the default (no-arg) constructor for a given class.
    Type Parameters:
    T - the type made by the constructor
    Parameters:
    clazz - the class to find a constructor for
    Returns:
    the default constructor for the given class
    Throws:
    IllegalStateException - if no default constructor can be found

    instantiate

    public static <T> T instantiate ( Class <T> clazz)
    Constructs a new T object using the default constructor of its class. Any exceptions thrown by the constructor will be rethrown by this method, possibly wrapped in an UndeclaredThrowableException .
    Type Parameters:
    T - the type of the object to construct.
    Parameters:
    clazz - the class to use for instantiation.
    Returns:
    a new instance of T made from its default constructor.
    Throws:
    IllegalArgumentException - if the given class is abstract, an interface, an array class, a primitive type, or void
    IllegalStateException - if access is denied to the constructor, or there are no default constructors
    InternalError - wrapper of the underlying exception if checked