Class ClassInfo

java.lang.Object
cool.scx.reflect.ClassInfo
All Implemented Interfaces:
AnnotatedElementInfo

public final class ClassInfo extends Object implements AnnotatedElementInfo
ClassInfo
Version:
0.0.1
Author:
scx567888
  • Method Details

    • type

      public com.fasterxml.jackson.databind.JavaType type()
      Java Type 这里我们使用 Jackson 的 JavaType 来方便进行诸如序列化等操作
    • name

      public String name()
    • accessModifier

      public AccessModifier accessModifier()
      类修饰符
    • classType

      public ClassType classType()
      类的类型
    • superClass

      public ClassInfo superClass()
      父类 可能为空
    • interfaces

      public ClassInfo[] interfaces()
      接口
    • constructors

      public ConstructorInfo[] constructors()
      构造参数
    • defaultConstructor

      public ConstructorInfo defaultConstructor()
      默认构造函数 (无参构造函数) 可能为空
    • recordConstructor

      public ConstructorInfo recordConstructor()
      Record 规范构造参数 可能为空
    • fields

      public FieldInfo[] fields()
      字段
    • allFields

      public FieldInfo[] allFields()
      获取类所有字段 包括继承自父类的字段
    • methods

      public MethodInfo[] methods()
      方法
    • allMethods

      public MethodInfo[] allMethods()
      获取类所有方法 包括继承自父类的方法
    • annotations

      public Annotation[] annotations()
      Description copied from interface: AnnotatedElementInfo
      元素上的注解
      Specified by:
      annotations in interface AnnotatedElementInfo
    • allAnnotations

      public Annotation[] allAnnotations()
      Description copied from interface: AnnotatedElementInfo
      获取所有的注解 包括继承自父级的注解 (假设存在继承的话, 如类或方法)
      Specified by:
      allAnnotations in interface AnnotatedElementInfo
    • isFinal

      public boolean isFinal()
      是否 final 类
    • isStatic

      public boolean isStatic()
      是否 静态类
    • isAnonymousClass

      public boolean isAnonymousClass()
      是否 匿名类
    • isMemberClass

      public boolean isMemberClass()
      是否 内部类
    • isPrimitive

      public boolean isPrimitive()
      是否基本类型
    • isArray

      public boolean isArray()
      是否数组
    • enumClass

      public ClassInfo enumClass()
      枚举类型
    • componentType

      public ClassInfo componentType()
      数组成员类型
    • findSuperType

      public ClassInfo findSuperType(Class<?> rawTarget)
      返回指定类型的 父级 ClassInfo 支持常规类,抽象类,接口