ElementType.LOCAL_VARIABLE目前基本没用

jdk5.0引入Annotation语法,@Target中的ElementType包括
ElementType.ANNOTATION_TYPE	应用于其他注解的元注解
ElementType.CONSTRUCTOR 构造函数
ElementType.FIELD 字段
ElementType.LOCAL_VARIABLE 方法中的本地变量
ElementType.METHOD 方法
ElementType.PACKAGE 包
ElementType.PARAMETER 方法的参数
ElementType.TYPE 类,接口或者枚举声明

ElementType.LOCAL_VARIABLE是方法中的本地变量。但是目前的javac不会在bytecode中的local variable中保存annotation信息,所以就无法在runtime时获取该annotaion。也就是说ElementType.LOCAL_VARIABLE只能用在RetentionPolicy.SOURCE情况下。

google了一下,JSR308会解决该问题
[url]http://jcp.org/en/jsr/detail?id=308[/url]
[url]http://groups.csail.mit.edu/pag/jsr308/[/url]

你可能感兴趣的:(java,Google)