public final class GenericUtils extends Object
| 构造器和说明 |
|---|
GenericUtils() |
| 限定符和类型 | 方法和说明 |
|---|---|
static Map<String,String> |
covariant(Map<String,?> origin)
map泛型协变
|
static Map<String,String> |
covariant(Properties properties) |
static <T> Class<T> |
getActualArgTypeArgument(Method method,
int methodArgsIndex) |
static <T> Class<T> |
getActualArgTypeArgument(Method method,
int methodArgsIndex,
int genericArgsIndex)
public void genericMethod(List
|
static <T> Class<T> |
getActualReturnTypeArgument(Method method) |
static <T> Class<T> |
getActualReturnTypeArgument(Method method,
int genericArgsIndex)
public List
|
static <T> Class<T> |
getActualTypeArgument(Class<?> clazz)
获取泛型的实际类型参数
|
static <T> Class<T> |
getActualTypeArgument(Class<?> clazz,
int genericArgsIndex)
public class GenericClass extends GenericSuperClass |
static <T> Class<T> |
getActualTypeArgument(Field field) |
static <T> Class<T> |
getActualTypeArgument(Field field,
int genericArgsIndex)
private List
|
static <T> Class<T> |
getActualTypeArgument(Type type,
int genericArgsIndex) |
static Map<String,Class<?>> |
getActualTypeVariableMapping(Class<?> clazz) |
static <T> Class<T> |
getFieldActualType(Class<?> clazz,
Field field)
public abstract class BaseEntity<I> {
private I id;
}
public class BeanClass extends BaseEntity<String> {}
|
static <T> Class<T> |
getFieldActualType(Class<?> clazz,
String fieldName) |
static List<Type> |
getGenericTypes(Class<?> clazz) |
static <T> Class<T> |
getMethodArgActualType(Class<?> clazz,
Method method,
int methodArgsIndex)
Returns method arg actual type
public abstract class ClassA<T> {
public void method(T arg) {}
}
public class ClassB extends classA<String>{}
|
static <T> Class<T> |
getMethodReturnActualType(Class<?> clazz,
Method method)
Returns method return actual type
public abstract class ClassA<T> {
public T method() {}
}
public class ClassB extends classA<String>{}
|
static Class<?> |
getRawType(Type type) |
public static Map<String,String> covariant(Properties properties)
public static <T> Class<T> getActualTypeArgument(Class<?> clazz)
clazz - public static <T> Class<T> getActualTypeArgument(Class<?> clazz, int genericArgsIndex)
clazz - genericArgsIndex - public static <T> Class<T> getActualArgTypeArgument(Method method, int methodArgsIndex)
public static <T> Class<T> getActualArgTypeArgument(Method method, int methodArgsIndex, int genericArgsIndex)
method - 方法对象methodArgsIndex - 方法参数索引号genericArgsIndex - 泛型参数索引号public static <T> Class<T> getActualReturnTypeArgument(Method method, int genericArgsIndex)
method - the methodgenericArgsIndex - the generic argument indexpublic static <T> Class<T> getActualTypeArgument(Field field, int genericArgsIndex)
field - the class fieldgenericArgsIndex - the genericArgsIndexpublic static <T> Class<T> getFieldActualType(Class<?> clazz, Field field)
public abstract class BaseEntity<I> {
private I id;
}
public class BeanClass extends BaseEntity<String> {}
clazz - the sub classfield - the super class defined fieldpublic static <T> Class<T> getMethodArgActualType(Class<?> clazz, Method method, int methodArgsIndex)
public abstract class ClassA<T> {
public void method(T arg) {}
}
public class ClassB extends classA<String>{}
clazz - the sub classmethod - the super class defined methodmethodArgsIndex - the method arg indexpublic static <T> Class<T> getMethodReturnActualType(Class<?> clazz, Method method)
public abstract class ClassA<T> {
public T method() {}
}
public class ClassB extends classA<String>{}
clazz - the sub classmethod - the super class defined methodpublic static Map<String,Class<?>> getActualTypeVariableMapping(Class<?> clazz)
Copyright © 2023. All rights reserved.