其他分享
首页 > 其他分享> > @ 4.1 重复注解

@ 4.1 重复注解

作者:互联网

重复注解

@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface MyTag {
    String name() default "勇敢牛牛";
    int age() default 21;
}
public class MyInfo {

    @MyTag
    @MyTag(name = "hb", age = 23)
    public void info() {
        System.out.println("yyds");
    }
}

java 8 之前不允许使用重复注解,(java 8以前必须使用容器修饰)
在这里插入图片描述

定义容器

@Documented
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface MyTags {
    MyTag[] value();
}

并在 MyTag 上加 @Repeatable(MyTags.class)

@Documented
@Repeatable(MyTags.class)
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface MyTag {
    String name() default "勇敢牛牛";
    int age() default 21;
}

在这里插入图片描述
容器在 java 8 以前的做法就不提了,已经过去式了。现在只是简化了以前的做法,本质还是一样的。

标签:MyTag,4.1,Target,重复,default,注解,Documented,RUNTIME,public
来源: https://blog.csdn.net/qq_45853150/article/details/119141958