public class UClassUtil extends Object
Constructor and Description |
---|
UClassUtil() |
Modifier and Type | Method and Description |
---|---|
static Class<?>[] |
getClasses(Object... objects)
获得对象数组的类数组
|
static ClassLoader |
getClassLoader()
|
static String |
getClassPath()
获得ClassPath,将编码后的中文路径解码为原字符
这个ClassPath路径会文件路径被标准化处理 |
static String |
getClassPath(boolean isEncoded)
获得ClassPath,这个ClassPath路径会文件路径被标准化处理
|
static URL |
getClassPathURL()
获得ClassPath URL
|
static Object |
getDefaultValue(Class<?> clazz)
获取指定类型分的默认值
默认值规则为: |
static Object[] |
getDefaultValues(Class<?>... classes)
获得默认值列表
|
static URL |
getResourceURL(String resource)
获得资源的URL
路径用/分隔,例如: |
static Class<?> |
getTypeArgument(Class<?> clazz)
获得给定类的第一个泛型参数
|
static Class<?> |
getTypeArgument(Class<?> clazz,
int index)
获得给定类的泛型参数
|
static boolean |
isAbstract(Class<?> clazz)
是否为抽象类
|
static boolean |
isAllAssignableFrom(Class<?>[] types1,
Class<?>[] types2)
比较判断types1和types2两组类,如果types1中所有的类都与types2对应位置的类相同,或者是其父类或接口,则返回
true |
static boolean |
isBasicType(Class<?> clazz)
是否为基本类型(包括包装类和原始类)
|
static boolean |
isNormalClass(Class<?> clazz)
是否为标准的类
这个类必须: |
static boolean |
isPrimitiveWrapper(Class<?> clazz)
是否为包装类型
|
static boolean |
isStatic(Method method)
是否为静态方法
|
static <T> Class<T> |
loadClass(String className)
加载类并初始化
|
static <T> Class<T> |
loadClass(String className,
boolean isInitialized)
加载类
|
static Method |
setAccessible(Method method)
设置方法为可访问
|
public static boolean isStatic(Method method)
method
- 方法public static Method setAccessible(Method method)
method
- 方法public static boolean isAbstract(Class<?> clazz)
clazz
- 类public static boolean isNormalClass(Class<?> clazz)
1、非接口 2、非抽象类 3、非Enum枚举 4、非数组 5、非注解 6、非原始类型(int, long等)
clazz
- 类public static String getClassPath()
public static String getClassPath(boolean isEncoded)
isEncoded
- 是否编码路径中的中文public static URL getClassPathURL()
public static URL getResourceURL(String resource) throws IORuntimeException
config/a/db.config spring/xml/test.xml
resource
- 资源(相对Classpath的路径)IORuntimeException
UResourceUtil.getResource(String)
public static Class<?>[] getClasses(Object... objects)
objects
- 对象数组,如果数组中存在null
元素,则此元素被认为是Object类型public static boolean isPrimitiveWrapper(Class<?> clazz)
clazz
- 类public static boolean isBasicType(Class<?> clazz)
clazz
- 类public static boolean isAllAssignableFrom(Class<?>[] types1, Class<?>[] types2)
true
types1
- 类组1types2
- 类组2public static Class<?> getTypeArgument(Class<?> clazz)
clazz
- 被检查的类,必须是已经确定泛型类型的类Class
public static Class<?> getTypeArgument(Class<?> clazz, int index)
clazz
- 被检查的类,必须是已经确定泛型类型的类index
- 泛型类型的索引号,既第几个泛型类型Class
public static Object getDefaultValue(Class<?> clazz)
1、如果为原始类型,返回0
2、非原始类型返回 null
clazz
- 类public static Object[] getDefaultValues(Class<?>... classes)
classes
- 值类型public static ClassLoader getClassLoader()
ClassLoader
1、获取当前线程的ContextClassLoader 2、获取UClassUtil
类对应的ClassLoader 3、获取系统ClassLoader(ClassLoader.getSystemClassLoader()
)
public static <T> Class<T> loadClass(String className)
T
- 对象类型className
- 类名Copyright © 2020. All rights reserved.