格式
四大属性
@Target()
表示注解可以用在哪些地方,如ElementType.FIELD,只能使用在字段上,ElementType.METHOD只能用在方法上;ElementType.TYPE只能用在类上
@Retenion()
表示需要在什么级别保存该注解信息
RUNTIME > CLASS > SOURCE
@Document()
@Inherited()
表示可以被子类继承的注解
package com.myself.learn.annotation;import java.lang.annotation.*;/*** @author zhangxiaofan* @date 2021/12/18 11:51*/public class Test {@MyAnnotationprivate String name;@MyAnnotationpublic void test(){}}//表示注解可以用在那些地方,如:ElementType.FIELD,只能使用在字段上,ElementType.METHOD只能用在方法上;ElementType.TYPE只能用在类上@Target( value = { ElementType.FIELD , ElementType.METHOD ,ElementType.TYPE } )@Retention( value = RetentionPolicy.RUNTIME ) // 表示需要在什么级别保存该注释信息,用于描述注解的生命周期,表示注解在什么地方有效,使用范围:SOURCE<CLASS<RUNTIME@Documented //表示是否将我们的注解生成JavaDoc文档中@Inherited //表示可以被子类继承父类的元注解@interface MyAnnotation{}
