public class ReflectionHelper
extends java.lang.Object
| Modifier and Type | Class and Description | 
|---|---|
| static class  | ReflectionHelper.ClassTypePairA tuple consisting of a class and type of the class. | 
| static class  | ReflectionHelper.DeclaringClassInterfacePairA tuple consisting of a concrete class, declaring class that declares a generic interface type. | 
| static class  | ReflectionHelper.TypeClassPair | 
| Constructor and Description | 
|---|
| ReflectionHelper() | 
| Modifier and Type | Method and Description | 
|---|---|
| static java.lang.Class | classForName(java.lang.String name)Get the Class from the class name. | 
| static java.lang.Class | classForName(java.lang.String name,
            java.lang.ClassLoader cl)Get the Class from the class name. | 
| static java.lang.Class | classForNameWithException(java.lang.String name)Get the Class from the class name. | 
| static java.lang.Class | classForNameWithException(java.lang.String name,
                         java.lang.ClassLoader cl)Get the Class from the class name. | 
| static <T> java.security.PrivilegedExceptionAction<java.lang.Class<T>> | classForNameWithExceptionPEA(java.lang.String name)Get privileged exception action to obtain Class from given class name. | 
| static <T> java.security.PrivilegedExceptionAction<java.lang.Class<T>> | classForNameWithExceptionPEA(java.lang.String name,
                            java.lang.ClassLoader cl)Get privileged exception action to obtain Class from given class name. | 
| static java.lang.reflect.Method | findMethodOnClass(java.lang.Class c,
                 java.lang.reflect.Method m)Find a method on a class given an existing method. | 
| static java.lang.Class | getArrayClass(java.lang.Class c)Get Array class of component class. | 
| static ReflectionHelper.DeclaringClassInterfacePair | getClass(java.lang.Class concrete,
        java.lang.Class iface)Find the declaring class that implements or extends an interface. | 
| static java.lang.Class<?> | getClassType(java.lang.Class<?> inspectedClass,
            java.lang.Class<?> superClass)Find a type of the class given it's Superclass. | 
| static java.security.PrivilegedAction<java.lang.ClassLoader> | getContextClassLoaderPA()Get privileged action to obtain context class loader. | 
| static java.lang.Class | getDeclaringClass(java.lang.reflect.AccessibleObject ao)Get declaring class of provided field, method or constructor. | 
| static java.lang.reflect.Method | getFromStringStringMethod(java.lang.Class c)Get the static fromString(String ) method. | 
| static java.lang.Class | getGenericClass(java.lang.reflect.Type parameterizedType)Get the class that is the type argument of a parameterized type. | 
| static <T> T | getInstance(java.lang.Class<T> c)Creates an instance of  Classc usingClass.newInstance(). | 
| static <T> T | getInstance(java.lang.Class<T> c,
           ErrorCollector collector)Creates an instance of  Classc usingClass.newInstance(). | 
| static OsgiRegistry | getOsgiRegistryInstance()Returns an  OsgiRegistryinstance. | 
| static java.lang.Class[] | getParameterizedClassArguments(ReflectionHelper.DeclaringClassInterfacePair p)Get the parameterized class arguments for a declaring class that declares a generic interface type. | 
| static java.lang.reflect.Type[] | getParameterizedTypeArguments(ReflectionHelper.DeclaringClassInterfacePair p)Get the parameterized type arguments for a declaring class that declares a generic interface type. | 
| static java.lang.reflect.Constructor | getStringConstructor(java.lang.Class c)Get the constructor that has a single parameter of String. | 
| static ReflectionHelper.TypeClassPair | getTypeArgumentAndClass(java.lang.reflect.Type parameterizedType) | 
| static java.lang.reflect.Method | getValueOfStringMethod(java.lang.Class c)Get the static valueOf(String ) method. | 
| static java.lang.String | methodInstanceToString(java.lang.Object o,
                      java.lang.reflect.Method m)Create a string representation of a method and an instance whose
 class implements the method. | 
| static java.lang.String | objectToString(java.lang.Object o)Create a string representation of an object. | 
| static ReflectionHelper.ClassTypePair | resolveTypeVariable(java.lang.Class c,
                   java.lang.Class dc,
                   java.lang.reflect.TypeVariable tv)Given a type variable resolve the Java class of that variable. | 
| static void | setAccessibleMethod(java.lang.reflect.Method m)Set a method to be accessible. | 
public static java.lang.Class getDeclaringClass(java.lang.reflect.AccessibleObject ao)
ao - object for which the declared class will be returned.public static java.lang.String objectToString(java.lang.Object o)
 Returns a string consisting of the name of the class of which the
 object is an instance, the at-sign character '@', and
 the unsigned hexadecimal representation of the hash code of the
 object. In other words, this method returns a string equal to the
 value of:
 
o.getClass().getName() + '@' + Integer.toHexString(o.hashCode())
o - the object.public static java.lang.String methodInstanceToString(java.lang.Object o,
                                                      java.lang.reflect.Method m)
 Returns a string consisting of the name of the class of which the object
 is an instance, the at-sign character '@',
 the unsigned hexadecimal representation of the hash code of the
 object, the character '.', the name of the method,
 the character '(', the list of method parameters, and
 the character ')'. In other words, thos method returns a
 string equal to the value of:
 
 
 o.getClass().getName() + '@' + Integer.toHexString(o.hashCode()) +
 '.' + m.getName() + '(' + <parameters> + ')'.
 o - the object whose class implements m.m - the method.public static java.lang.Class classForName(java.lang.String name)
The context class loader will be utilized if accessible and non-null. Otherwise the defining class loader of this class will be utilized.
name - the class name.public static java.lang.Class classForName(java.lang.String name,
                                           java.lang.ClassLoader cl)
name - the class name.cl - the class loader to use, if null then the defining class loader
             of this class will be utilized.public static java.lang.Class classForNameWithException(java.lang.String name)
                                                 throws java.lang.ClassNotFoundException
The context class loader will be utilized if accessible and non-null. Otherwise the defining class loader of this class will be utilized.
name - the class name.java.lang.ClassNotFoundException - if the class cannot be found.public static java.lang.Class classForNameWithException(java.lang.String name,
                                                        java.lang.ClassLoader cl)
                                                 throws java.lang.ClassNotFoundException
name - the class name.cl - the class loader to use, if null then the defining class loader
             of this class will be utilized.java.lang.ClassNotFoundException - if the class cannot be found.public static <T> java.security.PrivilegedExceptionAction<java.lang.Class<T>> classForNameWithExceptionPEA(java.lang.String name)
                                                                                                    throws java.lang.ClassNotFoundException
The actual context class loader will be utilized if accessible and non-null. Otherwise the defining class loader of the calling class will be utilized.
T - class type.name - class name.ClassNotFoundException or return null if the class cannot be found.java.lang.ClassNotFoundException - when provided string contains classname of unknown class.AccessController.doPrivileged(java.security.PrivilegedExceptionAction)public static <T> java.security.PrivilegedExceptionAction<java.lang.Class<T>> classForNameWithExceptionPEA(java.lang.String name,
                                                                                                           java.lang.ClassLoader cl)
                                                                                                    throws java.lang.ClassNotFoundException
T - class type.name - class name.cl - class loader to use, if null then the defining class loader
             of the calling class will be utilized.ClassNotFoundException
 or returns null if the class cannot be found.java.lang.ClassNotFoundException - when provided string contains classname of unknown class.AccessController.doPrivileged(java.security.PrivilegedExceptionAction)public static java.security.PrivilegedAction<java.lang.ClassLoader> getContextClassLoaderPA()
null if context class loader has not been set.AccessController.doPrivileged(java.security.PrivilegedAction)public static void setAccessibleMethod(java.lang.reflect.Method m)
m - the method to be set as accessiblepublic static java.lang.Class getGenericClass(java.lang.reflect.Type parameterizedType)
                                       throws java.lang.IllegalArgumentException
parameterizedType - must be an instance of ParameterizedType
                          and have exactly one type argument.java.lang.IllegalArgumentException - if the single type argument is not of
                                  a class, or a generic array type, or the generic component type
                                  of the generic array type is not class, or not a parameterized
                                  type with a raw type that is not a class.public static ReflectionHelper.TypeClassPair getTypeArgumentAndClass(java.lang.reflect.Type parameterizedType) throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentExceptionpublic static java.lang.Class getArrayClass(java.lang.Class c)
c - the component class of the arraypublic static java.lang.reflect.Method getValueOfStringMethod(java.lang.Class c)
c - The class to obtain the method.public static java.lang.reflect.Method getFromStringStringMethod(java.lang.Class c)
c - The class to obtain the method.public static java.lang.reflect.Constructor getStringConstructor(java.lang.Class c)
c - The class to obtain the constructor.public static java.lang.Class[] getParameterizedClassArguments(ReflectionHelper.DeclaringClassInterfacePair p)
p - the declaring classpublic static java.lang.reflect.Type[] getParameterizedTypeArguments(ReflectionHelper.DeclaringClassInterfacePair p)
p - the declaring classpublic static ReflectionHelper.DeclaringClassInterfacePair getClass(java.lang.Class concrete, java.lang.Class iface)
concrete - the concrete class than directly or indirectly implements or extends an interface class.iface - the interface class.public static ReflectionHelper.ClassTypePair resolveTypeVariable(java.lang.Class c, java.lang.Class dc, java.lang.reflect.TypeVariable tv)
c - the concrete class from which all type variables are resolveddc - the declaring class where the type variable was definedtv - the type variablepublic static java.lang.reflect.Method findMethodOnClass(java.lang.Class c,
                                                         java.lang.reflect.Method m)
If there exists a public method on the class that has the same name and parameters as the existing method then that public method is returned.
 Otherwise, if there exists a public method on the class that has
 the same name and the same number of parameters as the existing method,
 and each generic parameter type, in order, of the public method is equal
 to the generic parameter type, in the same order, of the existing method
 or is an instance of TypeVariable then that public method is
 returned.
c - the class to search for a public methodm - the method to findpublic static java.lang.Class<?> getClassType(java.lang.Class<?> inspectedClass,
                                              java.lang.Class<?> superClass)
inspectedClass - Class whose type is searched for.superClass - Class relatively to which the search is performed.public static OsgiRegistry getOsgiRegistryInstance()
OsgiRegistry instance.OsgiRegistry instance or null if the class cannot be instantiated (not in OSGi
 environment).public static <T> T getInstance(java.lang.Class<T> c,
                                ErrorCollector collector)
T - type.c - Class whose instance is going to be createdcollector - ErrorCollector which collects the Exceptions.Class.public static <T> T getInstance(java.lang.Class<T> c)
                         throws java.lang.IllegalAccessException,
                                java.lang.InstantiationException
Class c using Class.newInstance().T - type.c - Class whose instance is going to be createdClass.java.lang.IllegalAccessException - if the class or its nullary
                                constructor is not accessible.java.lang.InstantiationException - if this Class represents an abstract class,
                                an interface, an array class, a primitive type, or void;
                                or if the class has no nullary constructor;
                                or if the instantiation fails for some other reason.Copyright © 2012–2020 Oracle Corporation. All rights reserved.