240
世界上有2种人,一种懂二进制,另一种不懂二进制。

springboot注解-@Target、@Retention、@Document注解简介

@Target、@Retention、@Document注解简介

源码样例:
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
public @interface MthCache {
    String key();
}
--------------------------------------------------------
@Target 注解
功能:指明了修饰的这个注解的使⽤范围,即被描述的注解可以⽤在哪⾥。
ElementType的取值包含以下⼏种:
TYPE:类,接⼝或者枚举
FIELD:域,包含枚举常量
METHOD:⽅法
PARAMETER:参数
CONSTRUCTOR:构造⽅法
LOCAL_VARIABLE:局部变量
ANNOTATION_TYPE:注解类型
PACKAGE:包
--------------------------------------------------------
@Retention 注解
功能:指明修饰的注解的⽣存周期,即会保留到哪个阶段。
RetentionPolicy的取值包含以下三种:
SOURCE:源码级别保留,编译后即丢弃。
CLASS:编译级别保留,编译后的class⽂件中存在,在jvm运⾏时丢弃,这是默认值。
RUNTIME:运⾏级别保留,编译后的class⽂件中存在,在jvm运⾏时保留,可以被反射调⽤。
--------------------------------------------------------
@Documented 注解
功能:指明修饰的注解,可以被例如javadoc此类的⼯具⽂档化,只负责标记,没有成员取值
--------------------------------------------------------

 

posted @ 2022-06-30 16:04  _Origin  阅读(373)  评论(0编辑  收藏  举报