javaAPI元注解之Repeatable
Repeatable是JDK 1.8新增的注解,位于java.lang.annotation包中,允许同一位置多次出现相同注解。
1、 先查看它的API定义
2、 已记录:生成API帮助文档时显示注解内容。
3、 保留:JVM保留。
4、 (3)Target:该注解为元注解,用于指定其他注解的使用范围。
5、 value() 方法的返回值为注解类型,仅存在一个。

6、 创建一个名为MyAnnotation的普通注解,用于代码中标记功能。

7、 接下来是常见的可重复注解,先创建一个用于存储的容器注解 MyRepeatableAnnotations。

8、 接着,定义可重复注解 MyRepeatableAnnotation,并声明其为 @Repeatable(MyRepeatableAnnotations.class),但会遇到错误,继续往下分析。

9、 在MyRepeatableAnnotations注解中添加方法:MyRepeatableAnnotation value()。这样一来,上一步出现的编译错误得以解决,可重复注解的设置至此全部完成。

10、 编写测试类并包含四个方法,所示。
11、 第四个方法编译出错,表明其不合法,因为 MyAnnotation 不支持重复注解,导致错误。
12、 第二个方法没有报错的原因在于,MyRepeatableAnnotation 是可重复注解类型。
13、 是不是更具体了,应该明白了吧。

14、 编写测试方法,利用反射获取可重复注解,验证其是否正确存储到 MyRepeatableAnnotations 中。
15、 获取 repeatable2 方法的注解时,虽然存在两个 MyRepeatableAnnotation 注解,但实际取得的是一个 MyRepeatableAnnotations。这是因为两个 MyRepeatableAnnotation 被放入了 MyRepeatableAnnotations 容器中。这与 API 的描述一致:重复定义的注解会被存储到指定的容器注解内,从而实现注解的可重复特性。这种机制使得可以在同一个声明上多次使用相同的注解类型,而不会引发冲突或覆盖问题。
16、 2、获取位置1处的MyRepeatableAnnotations注解值(为MyRepeatableAnnotation数组),然后将其输出。
17、 3、获取notRepeatable3方法的注解,仅有一个MyAnnotation,情况正常。



文章标题:javaAPI元注解之Repeatable
文章链接://www.hpwebtech.com/jiqiao/330650.html
为给用户提供更多有价值信息,ZOL下载站整理发布,如果有侵权请联系删除,转载请保留出处。
其他类似技巧
- 2025-04-02 13:56:01javaAPI元注解之Retention
- 2025-04-02 12:29:01javaAPI元注解之Repeatable
- 2025-04-02 10:14:02android学习札记第5章之模拟航空订票及javaapi
- 2025-04-01 14:52:02如何从官网下载java API
- 2025-04-01 12:05:01javaAPI元注解之Target
- 2025-04-01 11:05:01javaAPI元注解之Inherited
- 2025-04-01 10:16:01javaAPI元注解之Documented
- 2022-03-24 16:47:34java state 状态设计模式
- 2021-10-26 16:44:41JAVA优质代码编写的30条建议
JAVA API软件简介
运行Java程序时,虚拟机装载程序的class文件所使用的Java API class文件。所有被装载的class文件(包括从应用程序中和从Java API中提取的)和所有已经装载的动态库(包含本地方法)共同组成了在Java虚拟机上运行的整个程序。 在一个平台能够支持Java程序以前,必须在这个特定平台上明确地实现API的功能。为访问主机上的本地... 详细介绍»





