public final class AccessibleHelp extends Object
| 限定符和类型 | 类和说明 |
|---|---|
static class |
AccessibleHelp.CustomClassLoader
自定义类加载器
|
| 限定符和类型 | 方法和说明 |
|---|---|
static <T> Constructor<T> |
accessible(Constructor<T> constructor) |
static Field |
accessible(Field field) |
static Method |
accessible(Method method) |
static boolean |
canCast(Class<?> src,
Class<?> des) |
static <T> T |
cloneObject(T t) |
static List<Constructor<?>> |
constructors(Class<?> cls) |
static List<Constructor<?>> |
constructors(Class<?> cls,
Predicate<Constructor<?>> predicate) |
static List<Constructor<?>> |
constructors(Class<?> cls,
Predicate<Constructor<?>> predicate,
int limit)
获取类的构造方法
|
static <T extends Enum<T>> |
enumSet(Class<?> cls)
获取枚举类的所有实例
|
static <E extends Enum<E>,T extends IEnum<?,?>> |
enumSet(String typeName)
根据全限定名或类名获取枚举类的所有实例
|
static <S> List<S> |
enumSets(Class<S> cls)
获取枚举类或接口的实现枚举类的所有实例
|
static List<String> |
fieldNames(Class<?> cls) |
static List<String> |
fieldNames(Class<?> cls,
Predicate<String> predicate) |
static List<String> |
fieldNames(Class<?> cls,
Predicate<String> predicate,
int limit)
获取类属性名称
|
static List<Field> |
fields(Class<?> cls) |
static List<Field> |
fields(Class<?> cls,
Predicate<Field> predicate) |
static List<Field> |
fields(Class<?> cls,
Predicate<Field> predicate,
int limit)
获取类属性
|
static Class<?> |
forName(String className) |
static Class<?> |
forName(String className,
boolean initialize) |
static Class<?> |
forName(String className,
boolean initialize,
ClassLoader loader) |
static List<Class<?>> |
getChildClasses(Class<?> cls) |
static List<Class<?>> |
getChildClasses(Class<?> cls,
int limit) |
static List<Class<?>> |
getChildClasses(Class<?> cls,
int limit,
String packageName) |
static List<Class<?>> |
getChildClasses(Class<?> cls,
Predicate<Class<?>> predicate) |
static List<Class<?>> |
getChildClasses(Class<?> cls,
Predicate<Class<?>> predicate,
int limit) |
static List<Class<?>> |
getChildClasses(Class<?> cls,
Predicate<Class<?>> predicate,
int limit,
String... packageNames) |
static List<Class<?>> |
getChildClasses(Class<?> cls,
Predicate<Class<?>> predicate,
int limit,
String packageName)
获取指定包下指定条件的子类或实现类
|
static List<Class<?>> |
getChildClasses(Class<?> cls,
Predicate<Class<?>> predicate,
String... packageNames) |
static List<Class<?>> |
getChildClasses(Class<?> cls,
Predicate<Class<?>> predicate,
String packageName) |
static List<Class<?>> |
getChildClasses(Class<?> cls,
String packageName) |
static List<Class<?>> |
getClasses(Predicate<Class<?>> predicate) |
static List<Class<?>> |
getClasses(Predicate<Class<?>> predicate,
int limit) |
static List<Class<?>> |
getClasses(Predicate<Class<?>> predicate,
int limit,
String... packageNames) |
static List<Class<?>> |
getClasses(Predicate<Class<?>> predicate,
int limit,
String packageName)
获取指定包下指定条件的类
|
static List<Class<?>> |
getClasses(Predicate<Class<?>> predicate,
String... packageNames) |
static List<Class<?>> |
getClasses(Predicate<Class<?>> predicate,
String packageName) |
static ClassLoader |
getClassLoader(Function<String,InputStream> classIs) |
static ClassLoader |
getClassLoader(Function<String,InputStream> classIs,
Function<byte[],byte[]>... modifiers) |
static ClassLoader |
getClassLoader(Function<String,InputStream> classIs,
Function<byte[],byte[]> modifier) |
static ClassLoader |
getClassLoader(String classpath) |
static ClassLoader |
getClassLoader(String classpath,
Function<byte[],byte[]>... modifiers) |
static ClassLoader |
getClassLoader(String classpath,
Function<byte[],byte[]> modifier) |
static <T> T |
getField(Field field,
Object obj) |
static <T> T |
getField(Object obj,
Predicate<Field> predicate) |
static <T,A extends Annotation> |
getFieldByAnnotation(Object obj,
Class<A> cls) |
static <T,A extends Annotation> |
getFieldByAnnotation(Object obj,
Class<A> cls,
Predicate<A> predicate)
获取具有指定注解条件的属性值
|
static List<Class<?>> |
getInnerClasses(Class<?> cls)
获取内部类(包括内部类的内部类)
|
static InputStream |
getLocalClassIs(String classpath,
String name) |
static Method |
getMethod(Class<?> cls,
String methodName)
根据方法名称获取空参方法
|
static Method |
getMethod(Class<?> cls,
String methodName,
Class<?>... ptypes)
根据方法名称及参数类型获取多个参数的方法
|
static Method |
getMethod(Class<?> cls,
String methodName,
Class<?> ptype)
根据方法名称及参数类型获取一个参数的方法
|
static Method |
getMethod(Class<?> cls,
String methodName,
Class<?> ptype1,
Class<?> ptype2)
根据方法名称及参数类型获取二个参数的方法
|
static <T> Class<T> |
getParameterizedType(Class<?> cls,
Class<?> superOrInterface,
String typeParamName)
获取指定类对象的父类或实现的接口中指定泛型的类对象
|
static <T> List<Class<? super T>> |
getSuperClasses(Class<T> cls)
获取父类(包括父类的父类)
|
static Type[] |
getTypes(Class<?> cls) |
static Type[] |
getTypes(Field field) |
static String |
identify(Class<?> cls)
获取类对象的唯一标识符
|
static <T> T |
invoke(String name,
ClassLoader classLoader,
String methodName) |
static <T> T |
invoke(String name,
ClassLoader classLoader,
String methodName,
Class<?> rtype) |
static <T> T |
invoke(String name,
ClassLoader classLoader,
String methodName,
Class<?>[] ptypes,
Object[] args) |
static <T> T |
invoke(String name,
ClassLoader classLoader,
String methodName,
Class<?> rtype,
Class<?>[] ptypes,
Object[] args) |
static <T> T |
invoke(String name,
ClassLoader classLoader,
String methodName,
Class<?> rtype,
Class<?> ptype,
Object arg) |
static <T> T |
invoke(String name,
ClassLoader classLoader,
String methodName,
Class<?> ptype,
Object arg) |
static <T> T |
invoke(String name,
ClassLoader classLoader,
String methodName,
String limit,
Class<?> rtype) |
static <T> T |
invoke(String name,
ClassLoader classLoader,
String methodName,
String limit,
Class<?> rtype,
Class<?>[] ptypes,
Object[] args) |
static <T> T |
invoke(String name,
ClassLoader classLoader,
String methodName,
String limit,
Class<?> rtype,
Class<?> ptype,
Object arg) |
static <T,U> U |
invoke(T receiver,
String methodName)
通过反射执行方法
|
static <T,U> U |
invoke(T receiver,
String methodName,
Class<?> rtype) |
static <T,U> U |
invoke(T receiver,
String methodName,
Class<?>[] ptypes,
Object[] args) |
static <T,U> U |
invoke(T receiver,
String methodName,
Class<?> rtype,
Class<?>[] ptypes,
Object[] args) |
static <T,U> U |
invoke(T receiver,
String methodName,
Class<?> rtype,
Class<?> ptype,
Object arg) |
static <T,U> U |
invoke(T receiver,
String methodName,
Class<?> ptype,
Object arg) |
static <T,U> U |
invoke(T receiver,
String methodName,
String limit,
Class<?> rtype) |
static <T,U> U |
invoke(T receiver,
String methodName,
String limit,
Class<?> rtype,
Class<?>[] ptypes,
Object[] args) |
static <T,U> U |
invoke(T receiver,
String methodName,
String limit,
Class<?> rtype,
Class<?> ptype,
Object arg) |
static boolean |
isAllAnnotationPresent(AnnotatedElement a,
Class<? extends Annotation>... cs) |
static boolean |
isAllAnnotationPresent(AnnotatedElement a,
Class<? extends Annotation> c1,
Class<? extends Annotation> c2) |
static boolean |
isAnnotationPresent(AnnotatedElement a,
Class<? extends Annotation> c) |
static boolean |
isAnyAnnotationPresent(AnnotatedElement a,
Class<? extends Annotation>... cs) |
static boolean |
isAnyAnnotationPresent(AnnotatedElement a,
Class<? extends Annotation> c1,
Class<? extends Annotation> c2) |
static boolean |
isCommon(Class<?> cls) |
static boolean |
isPrimitive(Class<?> cls) |
static boolean |
isPrimitiveWrap(Class<?> cls) |
static List<Method> |
methods(Class<?> cls) |
static List<Method> |
methods(Class<?> cls,
Predicate<Method> predicate) |
static List<Method> |
methods(Class<?> cls,
Predicate<Method> predicate,
int limit)
获取类的方法
|
static <T> T |
newObject(Class<? extends T> cls) |
static <T> T |
newObject(Class<? extends T> cls,
Object... initargs) |
static <T> T |
newObject(Class<? extends T> cls,
Object initarg) |
static <T> T |
newObject(String className,
ClassLoader classLoader) |
static <T> T |
newObject(String className,
ClassLoader classLoader,
Object... initargs) |
static <T> T |
newObject(String className,
ClassLoader classLoader,
Object initarg) |
static <T> T |
newObject(String className,
String classpath) |
static <T> T |
newObject(String className,
String classpath,
Object... initargs) |
static <T> T |
newObject(String className,
String classpath,
Object initarg) |
static boolean |
nonAllAnnotationPresent(AnnotatedElement a,
Class<? extends Annotation>... cs) |
static boolean |
nonAllAnnotationPresent(AnnotatedElement a,
Class<? extends Annotation> c1,
Class<? extends Annotation> c2) |
static boolean |
nonAnnotationPresent(AnnotatedElement a,
Class<? extends Annotation> c) |
static boolean |
nonAnyAnnotationPresent(AnnotatedElement a,
Class<? extends Annotation>... cs) |
static boolean |
nonAnyAnnotationPresent(AnnotatedElement a,
Class<? extends Annotation> c1,
Class<? extends Annotation> c2) |
static void |
setField(Field field,
Object obj,
Object val) |
static void |
setField(Object obj,
Function<Field,Object> func) |
static void |
setField(Object obj,
Predicate<Field> predicate,
Object value) |
static <A extends Annotation> |
setFieldByAnnotation(Object obj,
Class<A> cls,
Object value) |
static <A extends Annotation> |
setFieldByAnnotation(Object obj,
Class<A> cls,
Predicate<A> predicate,
Object value)
设置具有指定注解条件的属性
|
static Class<?> |
typeToClass(Type type) |
static Class<?>[] |
typeToClass(Type[] types,
int... indexes) |
public static Class<?> forName(String className, boolean initialize, ClassLoader loader)
public static boolean isPrimitive(Class<?> cls)
public static boolean isPrimitiveWrap(Class<?> cls)
public static boolean isCommon(Class<?> cls)
public static <T> Class<T> getParameterizedType(Class<?> cls, Class<?> superOrInterface, String typeParamName)
cls - 指定类对象(superOrInterface 的子类或实现类)superOrInterface - 指定类对象的父类或实现的接口typeParamName - 父类或接口中泛型参数的名称(T,K或V...)public static <T> Constructor<T> accessible(Constructor<T> constructor)
public static List<Field> fields(Class<?> cls, Predicate<Field> predicate, int limit)
cls - 类的class对象predicate - 属性过滤器limit - 限制获取属性个数public static List<String> fieldNames(Class<?> cls, Predicate<String> predicate, int limit)
public static List<Constructor<?>> constructors(Class<?> cls, Predicate<Constructor<?>> predicate, int limit)
public static List<Constructor<?>> constructors(Class<?> cls, Predicate<Constructor<?>> predicate)
public static List<Constructor<?>> constructors(Class<?> cls)
public static List<Method> methods(Class<?> cls, Predicate<Method> predicate, int limit)
public static Method getMethod(Class<?> cls, String methodName, Class<?> ptype)
public static Method getMethod(Class<?> cls, String methodName, Class<?> ptype1, Class<?> ptype2)
public static Method getMethod(Class<?> cls, String methodName, Class<?>... ptypes)
public static ClassLoader getClassLoader(Function<String,InputStream> classIs)
public static ClassLoader getClassLoader(Function<String,InputStream> classIs, Function<byte[],byte[]> modifier)
@SafeVarargs public static ClassLoader getClassLoader(Function<String,InputStream> classIs, Function<byte[],byte[]>... modifiers)
public static ClassLoader getClassLoader(String classpath)
public static InputStream getLocalClassIs(String classpath, String name)
public static ClassLoader getClassLoader(String classpath, Function<byte[],byte[]> modifier)
@SafeVarargs public static ClassLoader getClassLoader(String classpath, Function<byte[],byte[]>... modifiers)
public static <T> List<Class<? super T>> getSuperClasses(Class<T> cls)
public static List<Class<?>> getClasses(Predicate<Class<?>> predicate, int limit, String packageName)
public static List<Class<?>> getClasses(Predicate<Class<?>> predicate, String packageName)
public static List<Class<?>> getClasses(Predicate<Class<?>> predicate, int limit, String... packageNames)
public static List<Class<?>> getClasses(Predicate<Class<?>> predicate, String... packageNames)
public static List<Class<?>> getChildClasses(Class<?> cls, Predicate<Class<?>> predicate, int limit, String packageName)
public static List<Class<?>> getChildClasses(Class<?> cls, Predicate<Class<?>> predicate, int limit)
public static List<Class<?>> getChildClasses(Class<?> cls, Predicate<Class<?>> predicate, String packageName)
public static List<Class<?>> getChildClasses(Class<?> cls, Predicate<Class<?>> predicate)
public static List<Class<?>> getChildClasses(Class<?> cls, Predicate<Class<?>> predicate, int limit, String... packageNames)
public static List<Class<?>> getChildClasses(Class<?> cls, Predicate<Class<?>> predicate, String... packageNames)
public static List<Class<?>> getChildClasses(Class<?> cls, int limit, String packageName)
public static <T> T newObject(Class<? extends T> cls)
public static <T> T newObject(String className, ClassLoader classLoader)
public static <T> T newObject(String className, ClassLoader classLoader, Object initarg)
public static <T> T newObject(String className, ClassLoader classLoader, Object... initargs)
public static <T> T cloneObject(T t)
public static <E extends Enum<E>,T extends IEnum<?,?>> List<T> enumSet(String typeName)
public static <T,U> U invoke(T receiver,
String methodName)
public static <T,U> U invoke(T receiver,
String methodName,
Class<?>[] ptypes,
Object[] args)
public static <T> T invoke(String name, ClassLoader classLoader, String methodName)
public static <T> T invoke(String name, ClassLoader classLoader, String methodName, Class<?> ptype, Object arg)
public static <T> T invoke(String name, ClassLoader classLoader, String methodName, Class<?>[] ptypes, Object[] args)
public static <T,U> U invoke(T receiver,
String methodName,
String limit,
Class<?> rtype,
Class<?> ptype,
Object arg)
public static <T,U> U invoke(T receiver,
String methodName,
Class<?> rtype,
Class<?> ptype,
Object arg)
public static <T,U> U invoke(T receiver,
String methodName,
String limit,
Class<?> rtype,
Class<?>[] ptypes,
Object[] args)
public static <T,U> U invoke(T receiver,
String methodName,
Class<?> rtype,
Class<?>[] ptypes,
Object[] args)
public static <T> T invoke(String name, ClassLoader classLoader, String methodName, String limit, Class<?> rtype)
public static <T> T invoke(String name, ClassLoader classLoader, String methodName, Class<?> rtype)
public static <T> T invoke(String name, ClassLoader classLoader, String methodName, String limit, Class<?> rtype, Class<?> ptype, Object arg)
public static <T> T invoke(String name, ClassLoader classLoader, String methodName, Class<?> rtype, Class<?> ptype, Object arg)
public static <T> T invoke(String name, ClassLoader classLoader, String methodName, String limit, Class<?> rtype, Class<?>[] ptypes, Object[] args)
public static <T> T invoke(String name, ClassLoader classLoader, String methodName, Class<?> rtype, Class<?>[] ptypes, Object[] args)
public static boolean isAnnotationPresent(AnnotatedElement a, Class<? extends Annotation> c)
public static boolean nonAnnotationPresent(AnnotatedElement a, Class<? extends Annotation> c)
public static boolean isAnyAnnotationPresent(AnnotatedElement a, Class<? extends Annotation> c1, Class<? extends Annotation> c2)
public static boolean nonAnyAnnotationPresent(AnnotatedElement a, Class<? extends Annotation> c1, Class<? extends Annotation> c2)
public static boolean isAnyAnnotationPresent(AnnotatedElement a, Class<? extends Annotation>... cs)
public static boolean nonAnyAnnotationPresent(AnnotatedElement a, Class<? extends Annotation>... cs)
public static boolean isAllAnnotationPresent(AnnotatedElement a, Class<? extends Annotation> c1, Class<? extends Annotation> c2)
public static boolean nonAllAnnotationPresent(AnnotatedElement a, Class<? extends Annotation> c1, Class<? extends Annotation> c2)
public static boolean isAllAnnotationPresent(AnnotatedElement a, Class<? extends Annotation>... cs)
public static boolean nonAllAnnotationPresent(AnnotatedElement a, Class<? extends Annotation>... cs)
public static <T,A extends Annotation> T getFieldByAnnotation(Object obj, Class<A> cls, Predicate<A> predicate)
public static <T,A extends Annotation> T getFieldByAnnotation(Object obj, Class<A> cls)
public static <A extends Annotation> void setFieldByAnnotation(Object obj, Class<A> cls, Predicate<A> predicate, Object value)
public static <A extends Annotation> void setFieldByAnnotation(Object obj, Class<A> cls, Object value)
Copyright © 2022. All rights reserved.