此为个人学习笔记,内容可能有些混乱,仅供参考。
1、
自带注解
大致可分为三类:
a、编写文档:通过代码里标识的元数据生成文档。
b、代码分析:通过代码里标识的元数据对代码进行分析。
c、编译检查:通过代码里标识的元数据让编译器能实现基本的编译检查。
如
@author
@Deprecated
@
SuppressWarnings
,其参数有:
deprecation,使用了过时的类方法时的警告
unchecked,执行了未检查的转换时的警告
fallthrough,当 Switch 程序块直接通往下一种情况而没有 Break 时的警告
path,在类路径、源文件路径等中有不存在的路径时的警告
serial,当在可序列化的类上缺少 serialVersionUID 定义时的警告
finally ,任何 finally 子句不能正常完成时的警告
all,关于以上所有情况的警告
@
Target({TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE})
@
Retention
(
RetentionPolicy
.SOURCE)
/**
可以在编译时选择代码里的注释是否叧存在于源代码级,或者它也能在class文件中出现
*/
@
Target({TYPE,FIELD,
METHOD
,PARAMETER,CONSTRUCTOR,LOCAL_VARIABLE})
@
Retention(RetentionPolicy.SOURCE)
public
@interface
SuppressWarnings {
String[] value();
}
2、
自定义注解
@Target
({ElementType.
METHOD
,ElementType.
FIELD
})
@Retention
(RetentionPolicy.
RUNTIME
)
public
@interface
XAnnotation
{
String[] vaStrings();
int
level()
default 1;
}
Enum
一般用来表示
一组相同类型
的
常量
。
3、
ElementType
Java代码
package java.lang.annotation;
public enum ElementType {
TYPE, // 用于类,接口,枚举但不能是注释
FIELD,
// 字段上,包括枚举值
METHOD, // 方法,不包括构造方法
PARAMETER, // 方法的参数
CONSTRUCTOR,
//构造方法
LOCAL_VARIABLE,
// 本地变量
ANNOTATION_TYPE,
// 注释类型
PACKAGE // Java包
}
4、RetentionPolicy枚举:
编译器的处理有三种策略:
将注释保留在编译后的类文件中,并在第一次加载类时读取它。
将注释保留在编译后的类文件中,但是在运行时忽略它。
按照规定使用注释,但是并不将它保留到编译后的类文件中。
Java代码
package java.lang.annotation;
public enum RetentionPolicy {
SOURCE, // 此类型会被编译器丢弃
CLASS, // 此类型注释会保留在class文件中,但JVM会忽略它
RUNTIME // 此类型注释会保留在class文件中,JVM会读取它
}
5、其它
@Documented 文档化功能
使用此注解时必须设置RetentionPolicy为RUNTIME
@Inherited 让它允许继承,可作用到子类
6、读取注解信息
伪代码:
Class c; //Class对象,可通过Class.forName(
“
类全名
”
)得到
Method []methods=c.getDeclaredMethods();//获取类申明的所有方法
//迭代方法
Annotation[] annotations = method.getDeclaredAnnotations();
//获取在某个方法上所有注解
for(Annotation an:annotations){
}
分享到:
相关推荐
java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解代码java注解...
java注解和反射的个人学习笔记
JAVA注释模板以及详细设置解释等等。 注释模板 如何设置
Java注解实现
超级好用的 java 注释模板,吐血总结,整理。吐血总结,整理。
主要包括:普通java注解,hibernate注解,spring注解,struts2注解,对于学习注解的朋友有很大的帮助!
简述java注解功能及用法,有代码示例。看起来还成,比较简单,学spring注入的时候要用到注解注入的话,本书属于必看版。
java注释全解,内容全面,包括hibernate注解、Java注解、Spring注解、SSH全注解等内容,分为4个文档介绍。另附一些精品java学习资料,欢迎大家下载学习。
入门级java 注解学习示例代码
java注解解析知识要点 精简易懂
Java注解、反射、动态代理demo
Java 注解(Annotation) - 请认准 ih0qtq
java注解实现通用Excel中文表格转实体对象列表,支持中文表头,在Excel数据导入使用的通用工具类,代码简洁优雅 。基于注解实现的支持中文表头的读取Excel数据并转换为实体对象列表的工具类,使用该工具类可将Excel...
Java注解的使用例子,使用Ant编译,执行run.bat运行.
eclipse中java类注释模板,有需要的朋友可以参考使用。
这是自己总结的java注解 使用了思维导图,方便读取,快速阅读
java注解详解[文].pdf
java 注释模板 java 注释模板 java 注释模板 java 注释模板java 注释模板java 注释模板java 注释模板java 注释模板java 注释模板java 注释模板java 注释模板java 注释模板java 注释模板java 注释模板java 注释模板
自己做得java项目注释统计工具,可统计代码行数,注释行数,能统计各种注释样式,能看统计详细情况,能生成报表,可自由控制合格率!算法高效!
java 注解 反射 字节码 类加载 包括pdf资料以及全部源码文件,具有非常大参考价值和学习意义