Java对元数据(MetaData)的支持,也就是Annotation(注释)。它是代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理。通过使用Annotation,开发人员可以在不改变原有逻辑的情况下,在源文件嵌入一些补充的信息。代码分析工具,开发工具和部署工具可以通过这些补充信息进行验证或者进行部署。
Annotation提供了一条为程序元素设置元数据的方法,从某些方面来看,Annotation就像修饰符一样被使用,可用于修饰包,类,构造器,方法,成员变量,参数,局部变量的声明,这些信息被存储在Annotation的”name=value”对中。
Annotation是一个接口,程序可以通过反射来获取指定程序元素的Annotation对象,然后通过Annotation对象来取得注释里的元数据。
使用Annotation时要在其前面增加@符号,并把该Annotation当成一个修饰符使用,用于修饰它支持的程序元素。
限定重写父类方法:@Override,用来指定方法覆载的,可以强制一个子类必须要覆盖父类的方法。
标识已过时:@Deprecated,用于标识某个程序元素(类,方法等)已过时,当其他程序使用已过时的类,方法时,编译器将会给出警告。
抑制编译器警告:@SuppressWarnings,指示被Annotation标识的程序元素(以及在该程序元素中的所有子元素)取消显示指定的编译器警告。
定义新的@Annotation类型使用@interface关键字,它用于定义新的Annotation类型。
Public @interface Test{
}
定义了该Annotation之后,就可以在程序任何地方来使用该Annotation,使用Annotation时的语法非常类似于public,final这样的修饰符。
@Test
Public class MyClass{
}
public
@interface
MyTag {
String name()
default
"yeeku";
int age()
default 32;
}
public
class Test4{
@MyTag
public
voidinfo(){
}
}
Java使用Annotation接口来代表程序元素前面的注释,该接口是所有Annotation类型的父接口。除此之外,在java.lang.reflect包下新增了AnnotatedElement接口,该接口代表程序中可以接受注释的程序元素,该接口主要有如下几个实现类:
Class,Constrctor,Field,Method,Package.
当一个Annotation类型被定义为运行时Annotation后,该注释才是运行时可见,当class文件被装载时被保存在class文件中的Annotation才会被虚拟机读取。
public
static voidmain(String[] args)
throws SecurityException, NoSuchMethodException,ClassNotFoundException{
Annotation[] aArray = Class.forName("Test4").getMethod("info").getAnnotations();
for(Annotation an :aArray){
System.out.println(an);
}
}
分享到:
相关推荐
Java Annotation详解 Java Annotation详解 Java Annotation详解
个人收集的相关Java Annotation的资源资料内容。
JDK5.0 - Java Annotation 介绍 (ppt格式)
JAVA Annotation学习示例 的一个简单示例 有源码 也有相关博客说明
java之Annotation及其应用
Java 5 annotation 学习笔记Java 5 annotation 学习笔记Java 5 annotation 学习笔记
Java Annotation注解技术
Java Annotation的讲解和例子~~~
java annotation 手册.doc,java annotation 手册.doc,java annotation 手册.doc
本文针对java初学者或者annotation初次使用者全面地说明了annotation的使用方法、定义方式、分类。初学者可以通过以上的说明制作简单的annotation程序,但是对于一些高级的annotation应用(例如使用自定义annotation...
struts 拦截器,扩展,以及java annotation 这个是我学习所用,放在此处,作为中转。
Java annotation 什么是java annotation?annotation 的7种标注类型。nnotation提供了一条与程序元素关联任何信息或者任何元数据(metadata)的途径。从某些方面看,annotation就像修饰符一样被使用,并应用于包、...
如果你想知道java annotation是什么?你可以看看
JavaAnnotation必须掌握的特性Java开发Java经验技巧共6页.pdf.zip
java1.5 annotation注释源代码,
java annotation手册 关于annotation是什么东西,百度一下会有很多关于它的描述,在这里就不用再copy了,我们还是以一个示例开始吧,在开始示例之前,我们先来一个小故事。
javaAnnotation.pdf
Java Annotation入门,本文初步告诉你怎么使用java anotatin