Annotation注解(也称Meta Data元数据)为我们在代码中添加信息提供一个形式化的方法,是我们在后面的某个时刻方便的使用这些数据。
JavaSE5中自带了一些Annotation,可以分为两类,
标准注解,目前Java自带的有三个@Override,@Deprecated,@Suppress Warning
元注解
元注解是用来注解其他Annotation的,用的比较多的有两个
@Target 表示该注解可以用于什么地方。其取值的类型为java.lang. annotation.ElementType枚举类型
@Retention 表示需要在什么级别保存该注解,取值为RetentionPolicy枚举类型
整个Annotation的使用过程可以分成三块,Annotation的定义,Annotation的使用,和Annotation的处理器。
1.首先我们可以看一下如何定义一个Annotation
package com.liu.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
//用于域的声明
@Target(ElementType.FIELD)
// VM在运行期间也会保存annotation的信息,所以可以使用反射机制来读取之
@Retention(RetentionPolicy.RUNTIME)
public @interface Hello {
public String echo() default ("Hello,I am a field!");
}
2.我们将这个刚刚定义的Annotation拿来使用
package com.liu.annotation;
public class Book {
@Hello(echo = "Hello,I am the name of the book!")
public String name;
}
3.写一个处理器类来对Annotatin进行处理,这里要使用到Java的反射机制了呢
package com.liu.annotation;
import java.lang.reflect.Field;
public class BookFileldTracker {
public static void trackBook(Class<?> cl) {
for (Field f : cl.getDeclaredFields()) {
Hello h = f.getAnnotation(Hello.class);
if (h != null) {
System.out.println(h.echo());
}
}
}
public static void main(String[] args) {
trackBook(Book.class);
}
}
相关推荐
入门级java 注解学习示例代码
学习文档,移动开发,语言学习。
学习注解,android实例使用自定义注解以及简单的注解处理器
java注解和反射的个人学习笔记
可插拔式的注解处理方式:相关的处理包:java .annotation.processing javax.lang.model包Processing负责正真的处
java元注解
这是自己总结的java注解 使用了思维导图,方便读取,快速阅读
注解是JDK1.5版本开始引入的一个特性,用于对代码进行说明,可以对包、类、接口、字段、方法参数、局部变量等进行注解。它主要的作用有以下四方面: · 生成文档,通过代码里标识的元数据生成javadoc文档。 · ...
java注释全解,内容全面,包括hibernate注解、Java注解、Spring注解、SSH全注解等内容,分为4个文档介绍。另附一些精品java学习资料,欢迎大家下载学习。
主要包括:普通java注解,hibernate注解,spring注解,struts2注解,对于学习注解的朋友有很大的帮助!
NULL 博文链接:https://lsz1023-126-com.iteye.com/blog/2048234
亲手整理企业项目上所用的java注解用于新手交流学习,内容比较详细,对新手有较大帮助
Java学习资料—反射机制和注解;Java学习资料—反射机制和注解;Java学习资料—反射机制和注解Java学习资料—反射机制和注解;Java学习资料—反射机制和注解;Java学习资料—反射机制和注解;
全面解析java注解PPT学习教案.pptx
java 注解 反射 字节码 类加载 包括pdf资料以及全部源码文件,具有非常大参考价值和学习意义
实用的的java注释模板,可以让你们的开发注释得到统一。
java程序注释的规范,每个初学者都应该掌握规范进行编程开发和学习,习惯了规范,自然就会提升代码的质量,提升团队的开发进度!
javase学习
Java是一种高级的面向对象的程序设计语言,它具有广泛的应用和强大的跨平台特性。Java语言于1995年由Sun公司推出,由Java之父詹姆斯高斯林设计。Java的设计目标是提供一种易学易用、功能强大的编程语言,使开发人员...
七、 CoreJava中的注释 八、 jar命令的用法 九、计算机编译一个java程序的过程 十、import声明的作用 。。。。。。。。。。。。。。 Day11 《多线程》 Day12 一.I/O 流(java 如何实现与外界数据的交流)