手机
当前位置:查字典教程网 >编程开发 >Java >Java8新特性之重复注解(repeating annotations)浅析
Java8新特性之重复注解(repeating annotations)浅析
摘要:一、什么是重复注解允许在同一申明类型(类,属性,或方法)的多次使用同一个注解二、一个简单的例子java8之前也有重复使用注解的解决方案,但可...

一、什么是重复注解

允许在同一申明类型(类,属性,或方法)的多次使用同一个注解

二、一个简单的例子

java 8之前也有重复使用注解的解决方案,但可读性不是很好,比如下面的代码:

复制代码 代码如下:

public @interface Authority {

String role();

}

public @interface Authorities {

Authority[] value();

}

public class RepeatAnnotationUseOldVersion {

@Authorities({@Authority(role="Admin"),@Authority(role="Manager")})

public void doSomeThing(){

}

}

由另一个注解来存储重复注解,在使用时候,用存储注解Authorities来扩展重复注解,我们再来看看java 8里面的做法:

复制代码 代码如下:

@Repeatable(Authorities.class)

public @interface Authority {

String role();

}

public @interface Authorities {

Authority[] value();

}

public class RepeatAnnotationUseNewVersion {

@Authority(role="Admin")

@Authority(role="Manager")

public void doSomeThing(){ }

}

不同的地方是,创建重复注解Authority时,加上@Repeatable,指向存储注解Authorities,在使用时候,直接可以重复使用Authority注解。从上面例子看出,java 8里面做法更适合常规的思维,可读性强一点

三、总结

JEP120没有太多内容,是一个小特性,仅仅是为了提高代码可读性。这次java 8对注解做了2个方面的改进(JEP 104,JEP120),相信注解会比以前使用得更加频繁了。

【Java8新特性之重复注解(repeating annotations)浅析】相关文章:

java加密枝术深入理解

Java 将字符串动态生成字节码的实现方法

浅析Java中Map与HashMap,Hashtable,HashSet的区别

java判断字符串String是否为空问题浅析

java多线程编程之使用Synchronized关键字同步类方法

基于Ajax用户名验证、服务条款加载、验证码生成的实现方法

Java Annotation(Java 注解)的实现代码

java string的一些细节剖析

Java线程的相关方法详细解析

深入理解final变量的初始化

精品推荐
分类导航