核心包
java.lang.annotation
javax.annotation
javax.annotation.processing
javax.lang.model
javax.lang.model.element
javax.lang.model.type
javax.lang.model.util
javax.tools
1、java.lang.annotation
自定义注解相关枚举和系统注解
2、javax.annotation.processing
用来声明注释处理器并允许注释处理器与注释处理工具环境通信的工具。
接口:
| 接口 | 概述 |
| Filer | 支持通过注解解析器生成文件,包含资源文件和Class文件 |
| Messager | 输出注解解析器信息 |
| ProcessingEnvironment | 注解解析器环境,提供解析器文件声称对想Filer, 编译选项等 |
| RoundEnvironment | 处理器可以查询有关注释处理的 round 的信息 |
类:
注解类型:
| 注解类型 | 概述 |
| SupportedAnnotationTypes | 声明自定义注解器支持那些Annotation |
| SupportedOptions | 声明自定义注解器支持那些编译参数 |
| SupportedSourceVersion | 声明自定义注解器支持的那些最新的原版本注解 |
3、javax.lang.model.element
用于 Java 编程语言的程序元素的接口
接口:
| 接口 | 概述 |
| Element | 表示一个程序元素,比如包、类或者方法。所有程序元素的父接口 |
| ExecutableElement | 表示某个类或接口的方法、构造方法或初始化程序(静态或实例),包括注释类型元素 |
| Name | 字符的不可变序列 |
| PackageElement | 表示一个包程序元素 |
| TypeElement | 表示一个类或接口程序元素 |
| TypeParameterElement | 表示一般类、接口、方法或构造方法元素的形式类型参数 |
| VariableElement |
表示一个字段、enum 常量、方法或构造方法参数、局部变量或异常参数
|
枚举:
| 枚举 | 概述 |
| ElementKind | 程序元素枚举(例如:类元素,方法) |
| Modifier | 表示程序元素(如类、方法或字段)上的修饰符 |
| NestingKind |
4、javax.lang.model.type
用来为 Java 编程语言类型建立模型的接口
接口:
| 接口 | 概述 |
| ArrayType | 表示一个数组类型 |
| DeclaredType | 表示某一声明类型,是一个类 (class) 类型或接口 (interface) 类型 |
| ErrorType | 表示无法正常建模的类或接口类型 |
| ExecutableType | 示 executable 的类型。executable 是一个方法、构造方法或初始化程序 |
| NoType |
在实际类型不适合的地方使用的伪类型。 |
| NullType | 表示 null 类型 |
| PrimitiveType |
表示一个基本类型。这些类型包括 boolean、byte、short、int、long、char、float 和 double。
|
| ReferenceType | 表示一个引用类型。这些类型包括类和接口类型、数组类型、类型变量和 null 类型。 |
| TypeMirror |
表示 Java 编程语言中的类型。这些类型包括基本类型、声明类型(类和接口类型)、数组类型、类型变量和 null 类型。还可以表示通配符类型参数、executable 的签名和返回类型,以及对应于包和关键字 void 的伪类型。
|
| TypeVariable | 表示一个类型变量 |
| TypeVisitor | 类型的 visitor,使用 visitor 设计模式的样式 |
| WildcardType |
表示通配符类型参数。示例包括: ? ? extends Number ? super T 通配符的上边界可通过 |
枚举:
| 枚举 | 概述 |
| TypeKind | 类型镜像的种类。 |
下面附上相关类图