负责注解其他注解的注解,即对我们自定义的注解类型进行注解。
什么是元注解?
元注解的作用是负责注解其他注解,java定义了4个标志的meta-annotation类型,他们被用来提供对其他annotation类型作说明。这些类型和它们所支持的类在java.lang.annotation包中可以找到。
- @Target:描述注解的使用范围(包、类、方法、域。。。)(注解可以用在什么地方)
- @Retention:表示需要在什么级别保存该注解信息(源码source < 类文件class < 运行时Runtime)
- @Document:说明该注解被包含在javaDoc中
- @Inherited:说明子类可以继承分类中的该注解
自定义注解
自定义注解详细介绍见:传送门
自定义注解使用@interface,格式: public @interface 注解名{ 定义内容 }
1 |
public MyAnnotation{ |
Target
@Target:描述注解的使用范围(包、类、方法、域。。。)(注解可以用在什么地方)
1 |
//定义一个注解 |
value = ElementType.METHOD
,表示注解使用在方法上,当使用在类上时报错:
Retention
@Retention:表示需要在什么级别保存该注解信息(源码source < 类文件class < 运行时Runtime)
一般自定义注解都使用RUNTIME级别(级别最高)
1 |
//Retention 表示我们的注解在什么地方有效 |
Document
@Document:说明该注解被包含在javaDoc中
1 |
//Documented 表示是否将我们的注解生成在javaDoc中 |
Inherited
@Inherited:说明子类可以继承分类中的该注解
1 |
//Inherited 子类可以继承父类的注解 |