博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java8的注解-Repeatable
阅读量:6257 次
发布时间:2019-06-22

本文共 1992 字,大约阅读时间需要 6 分钟。

hot3.png

Java8注解新增两个主要特性,一个类型注解,目前没看到什么用,留着再研究吧(坏习惯!),另一个就是我要说的这个新特性Repeatable感觉棒棒的,可以一次传好多值啦。来看我的这个 Demo

###code

public class RepeatableAnnotationDemo {    public static void main(String[] args) {        testRepeatable();    }    @myAnno(str = "hs", size = 2)    @myAnno(str = "Ys", size = 1)    @myAnno(str = "zs", size = 3)    public static void testRepeatable() {        try {            Class
clazz = Class.forName("Book.RepeatableAnnotationDemo"); Method method = clazz.getMethod("testRepeatable"); RepeatableAnno annotation = method.getAnnotation(RepeatableAnno.class); System.out.println(annotation); myAnno[] annos1 = annotation.value(); for (myAnno anno : annos1) { System.out.println(anno + "->size:" + anno.size() + " str:" + anno.str()); } System.out.println("------------------------------------------------"); myAnno[] annos = method.getAnnotationsByType(myAnno.class); for (myAnno anno : annos) { System.out.println(anno + "->size:" + anno.size() + " str:" + anno.str()); } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (NoSuchMethodException e) { e.printStackTrace(); } }}@Retention(RetentionPolicy.RUNTIME)@Repeatable(RepeatableAnno.class)@interface myAnno { String str() default " "; int size() default 0;}@Retention(RetentionPolicy.RUNTIME)@interface RepeatableAnno { myAnno[] value();}
@Book.RepeatableAnno(value=[@Book.myAnno(size=2, str=hs), @Book.myAnno(size=1, str=Ys), @Book.myAnno(size=3, str=zs)])@Book.myAnno(size=2, str=hs)->size:2 str:hs@Book.myAnno(size=1, str=Ys)->size:1 str:Ys@Book.myAnno(size=3, str=zs)->size:3 str:zs------------------------------------------------@Book.myAnno(size=2, str=hs)->size:2 str:hs@Book.myAnno(size=1, str=Ys)->size:1 str:Ys@Book.myAnno(size=3, str=zs)->size:3 str:zs

转载于:https://my.oschina.net/xd03122049/blog/862038

你可能感兴趣的文章
WIN7关闭共享后怎样去掉图标上的小锁
查看>>
SRV记录注册不成功的可能的原因
查看>>
一步完成 MySQL 向 Redis 迁移
查看>>
【VMC实验室】在QCloud上创建您的SQL Cluster(4)
查看>>
我的友情链接
查看>>
卢松松:每个网站都该有个监测服务
查看>>
Memcache与MySQL并肩作战
查看>>
使用Android模拟器测试Linux驱动(1)
查看>>
验证码广告:站长增加收入新渠道
查看>>
objective-c 枚举王国遍历数组
查看>>
C# WinForm开发系列 - OWC
查看>>
关于利用VS2008创建项目遇到的小困惑备忘
查看>>
发布一款域名监控小工具——Domain(IP)Watcher
查看>>
VBS中数组的各种处理方式
查看>>
通用数据权限管理系统设计
查看>>
High Resolution Timer in Java 5
查看>>
Visio2010绘制上下文数据流图
查看>>
SQL高级---SQL TOP 子句
查看>>
EhCache 分布式缓存/缓存集群
查看>>
[读书笔记]黑客与画家-思维、财富、创业、产品、设计、编程
查看>>