@Target:表示该注解可以用于什么地方,可能的ElementType参数:
CONSTRUCTOR:构造器的声明
LOCAL_VARIABLE:局部变量声明
METHOD:方法声明
PACKAGE:包声明 PARAMETER:参数声明
TYPE:类、接口(包括注解类型)或enum声明
@Retention:表示需要在什么级别保存该注解信息。可选的RetentionPolicy参数包括:
SOURCE:注解将被编译器丢弃
CLASS:注解在class文件中可用,但会被VM丢弃
RUNTIME:VM将在运行期间保留注解,因此可以通过反射机制读取注解的信息。(常用)
@Document:将注解包含在Javadoc中
@Inherited:允许子类继承父类中的注解
注意:
注解可以设定初始值,使用default就可以实现。
注解只有一个元素的时候,该元素名称必须是value,并且在使用该注解的时候可以省略”alue=”。
注解的值必须是确定的,且不能使用null作为值。
注解可能的类型:所有基本类型、String、Class、enum、Annotation、以上类型的数组形式。
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-10 05:45:58