java注解目前使用非常广泛,spring等框架都支持注解配置。其中注解Annotation的作用也比较明显:
1、可以生成文档;
2、可以简化配置;
3,在编译期间检查代码格式,如@override。
java定义注解是使用@interface声明,其中两个最主要的参数是@Retention(RetentionPolicy.RUNTIME)和
@Target(ElementType.TYPE)。Retention参数表示注释要保留多久。如果注释类型声明中不存在 Retention 注释,则保留策略默认为 RetentionPolicy.CLASS ;它有三种取值(代表三个阶段): RetentionPolicy.SOURCE:保留注解到java源文件阶段,例如Override、SuppressWarnings ,RetentionPolicy.CLASS:保留注解到class文件阶段, RetentionPolicy.RUNTIME:保留注解到运行时阶段即内存中的字节码,可以反射性地读取注解里的信息,可通过以下代码验证:
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface ExportFormat {
Class<?> className();
}
@ExportFormat(className=SettlePathExportFormat.class)
public class SettlePathDto {
public static void main(String[] args) throws Exception {
SettlePathDto dto = new SettlePathDto();
Class clazz = dto.getClass();
ExportFormat a = (ExportFormat)clazz.getAnnotation(ExportFormat.class);
System.out.println(a.className());
}
}
运行以上代码,发现只有RetentionPolicy.RUNTIME时,才能正常运行,否则都会报空指针,因为main是在jvm运行时去读取注解里的信息。
@Target(ElementType.TYPE):表示注解的作用域,有TYPE(类级别)、FIELD(字段)、METHOD(方法)等。
分享到:
相关推荐
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资料以及全部源码文件,具有非常大参考价值和学习意义