程序包 cn.fxcraft.util

类 ClassUtil


  • public class ClassUtil
    extends java.lang.Object
    类工具
    作者:
    FzmXer 2023年09月03日 17时19分
    • 方法概要

      所有方法 静态方法 具体方法 
      修饰符和类型 方法 说明
      static java.util.Map<java.lang.String,​java.lang.Class<?>> getAllClass​(java.io.File file, java.lang.ClassLoader loader)
      获取所有类
      static java.util.Set<java.lang.Class<?>> getAllClass​(java.lang.String packPath)
      获取所有类
      static java.lang.String getAnnotationValue​(java.lang.reflect.AnnotatedElement object, java.lang.Class<? extends java.lang.annotation.Annotation> annoClass)
      解析注解中的value的值 当返回null,表示不存在该注解 返回"",表示value值为空
      static java.lang.Class<?> getClass​(java.lang.String name)
      获取类
      static <T> java.lang.Class<? extends T> getClass​(java.lang.String name, java.lang.Class<T> superClass)
      获取类
      static java.util.List<java.lang.reflect.Field> getFields​(java.lang.Class<?> clazz)
      获得类中的所有字段(包括父类)
      static java.lang.reflect.Method getGetterMethodByField​(java.lang.Class<?> clazz, java.lang.reflect.Field field)
      获取该字段的get方法
      static java.util.List<java.lang.reflect.Method> getMethodsByClass​(java.lang.Class<?> clazz)
      获取这个类的所有方法(包括父类)
      static boolean hasAnnotation​(java.lang.reflect.AnnotatedElement object, java.lang.Class<? extends java.lang.annotation.Annotation> annoClass)
      判断是否存在注解
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 方法详细资料

      • getAllClass

        public static java.util.Map<java.lang.String,​java.lang.Class<?>> getAllClass​(java.io.File file,
                                                                                           java.lang.ClassLoader loader)
        获取所有类
        参数:
        file - 模块文件
        loader - 类加载器
        返回:
        Map集合
      • getAllClass

        public static java.util.Set<java.lang.Class<?>> getAllClass​(java.lang.String packPath)
        获取所有类
        参数:
        packPath - 包路径
        返回:
        所有类集合
      • getClass

        public static java.lang.Class<?> getClass​(java.lang.String name)
        获取类
        参数:
        name - 类名
        返回:
      • getClass

        public static <T> java.lang.Class<? extends T> getClass​(java.lang.String name,
                                                                java.lang.Class<T> superClass)
        获取类
        类型参数:
        T - 类型
        参数:
        name - 类名
        superClass - 父类
        返回:
      • getFields

        public static java.util.List<java.lang.reflect.Field> getFields​(java.lang.Class<?> clazz)
        获得类中的所有字段(包括父类)
        参数:
        clazz - 类
        返回:
        所有字段
      • getMethodsByClass

        public static java.util.List<java.lang.reflect.Method> getMethodsByClass​(java.lang.Class<?> clazz)
        获取这个类的所有方法(包括父类)
        参数:
        clazz - 类
        返回:
        所有方法
      • getGetterMethodByField

        public static java.lang.reflect.Method getGetterMethodByField​(java.lang.Class<?> clazz,
                                                                      java.lang.reflect.Field field)
        获取该字段的get方法
        参数:
        clazz - 类
        field - 字段
        返回:
        方法
      • hasAnnotation

        public static boolean hasAnnotation​(java.lang.reflect.AnnotatedElement object,
                                            java.lang.Class<? extends java.lang.annotation.Annotation> annoClass)
        判断是否存在注解
        参数:
        object - 对象
        annoClass - 注解类
        返回:
        boolean
      • getAnnotationValue

        public static java.lang.String getAnnotationValue​(java.lang.reflect.AnnotatedElement object,
                                                          java.lang.Class<? extends java.lang.annotation.Annotation> annoClass)
        解析注解中的value的值 当返回null,表示不存在该注解 返回"",表示value值为空
        参数:
        object - 对象
        annoClass - 注解类
        返回:
        注解值