Annotation: 译为注释或注解
An annotation, in the Java computer programming language, is a form of syntactic metadata that can be added to Java source code. Classes, methods, variables, parameters and packages may be annotated. Unlike Javadoc tags, Java annotations can be reflective in that they can be embedded in class files generated by the compiler and may be retained by the Java VM to be made retrievable at run-time.简译之:注释在Java计算机语言中是一种句法(语法)的元数据的形式,它可以被添加到JAVA的源代码中。 类、方法、变量、参数和包都可以被注释。与Javadoc标记不同的是,JAVA注释可以反射检索那些已经嵌入过注释被编译器生成的class文件,或那些保留在JAVA虚拟机中在运行时可获取的。
Java annotations are typically used for the following purposes:
Compiler instructions Build-time instructions Runtime instructions
Java有三个内置注释,它们可以发指令给Java编译器。
Java注释可以被用来在编译时,当你建立你的软件项目。构建过程包括生源代码,编译源代码,生成XML文件(例如部署描述符),包装编译后的代码和文件到一个JAR文件等.构建的软件通常是由一个自动构建工具如Apache Ant或Apache Maven。构建工具可以扫描你的Java代码的具体说明和生成源代码或基于这些批注的其他文件。
一 注释的形式
最基础的注释形式
@Entity@符号对于编译器来说标志着这是一个注释,@后面的字符串代表这个注释的名字。
带元素的注释形式
注释也可以有元素,它们可以用来设值。这里的元素可以理解为一个属性或参数。
@Entity(tableName = "vehicles")
这里需要注意,如果注释要有参数,需要在注释名称后面加一对括号,参数与参数值以“参数=‘参数值’”的形式位于括号内。
上面例子中注释有一个元素tableName,它的值为vehicles,当然它也可有多个元素,如:
@Entity(tableName = "vehicles", primaryKey = "id")
如果注释只有一个元素,通常情况下元素名会采用“value”(这是一个惯例):
@InsertNew(value = "yes")
当注释只有一个元素,并且元素名为“value”,那就可以直接省略掉name,直接写元素值:
@InsertNew("yes")
二 注释的位置
You can put Java annotations above classes, interfaces, methods, method parameters, fields and local variables.
注释可以加在类、接口、方法、方法参数、字段和本地变量上。下面是一个在类定义上加注释的例子:
@Entity public class Vehicle { }
下面举一个加注释的位置情况全的例子:
@Entity public class Vehicle { @Persistent protected String vehicleName = null; @Getter public String getVehicleName() { return this.vehicleName; } public void setVehicleName(@Optional vehicleName) { this.vehicleName = vehicleName; } public List addVehicleNameToList(List names) { @Optional List localNames = names; if(localNames == null) { localNames = new ArrayList(); } localNames.add(getVehicleName()); return localNames; } }
总结:本文只是简单的介绍了一下注释的定义、书写形式及书写的位置。初步了解Java注释的信息后,再来详谈Java中自带的一些Annotations、以及项目中Annotation的高级用法。
参考资料:
http://www.cnblogs.com/java-chen/archive/2013/06/14/3135866.html
http://blog.csdn.net/x_yp/article/details/6229516
http://computerdragon.blog.51cto.com/6235984/1210969
http://www.cnblogs.com/mandroid/archive/2011/07/18/2109829.html
http://tutorials.jenkov.com/java/annotations.html
http://en.wikipedia.org/wiki/Java_annotation
相关推荐
Java基础复习笔记12Java自定义注解Annotation的使用
要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前,我们就必须要了解Java为我们提供的元注解和相关定义注解的语法
JPA、EJB、Spring零配置等等怎么使用相信各位读者都能掌握,这里主要是说如何自定义自己的注解,自己使用自定义的注解。
初学者可以通过以上的说明制作简单的annotation程序,但是对于一些高级的annotation应用(例如使用自定义annotation生成javabean映射xml文件)还需要进一步的研究和探讨。涉及到深入annotation的内容,作者将在后文...
本文全面讲述了Java注解Annotation与Java自定义注解及相关内容,大家可以认真看看
自定义Annotation的例子,博客地址:http://blog.csdn.net/yirentianran/article/details/52816764
本篇文章介绍了,Java Annotation(Java 注解)的实现代码。需要的朋友参考下
本文针对java初学者或者annotation初次使用者全面地说明了annotation的使用方法、定义方式、分类。初学者可以通过以上的说明制作简单的annotation程序,但是对于一些高级的annotation应用(例如使用自定义annotation...
@Target:用于描述注解的使用范围,如果自定义注解不存在@Target,则表示该注解可以使用在任何程序元素之上。接收参数ElementType,其值如下: /**接口、类、枚举、注解**/ ElementType.TYPE /**字段、枚举的常量**/...
使用annotationProcessor插件在编译期创建Java文件 使用在idea中 可以尝试下
学习java自定义注解的小例子,处理运行时注解方法,可以结合博客学习,博客地址: http://blog.csdn.net/liuyonglei1314/article/details/59494503
java 元注解+拦截器实现自定义注解 @CmwAutoWired:自定义依赖注入 注意:注入的接口和实现类需要在同一包名下,注解的是类则无限制 @FieldAnnotation:自定义属性注解 @MethodAnnotation:自定义方法注解 @...
java自定义 注解 annotation、标签库tag、监听listener、junit简单测试代码
针对java 初学者或者annotation 初次使用者全面地说明了annotation 的使用方法、定义 方式、分类。初学者可以通过以上的说明制作简单的annotation 程序,但是对于一些高级的 annotation 应用(例如使用自定义...
注解Annotation实现原理与自定义注解例子 每当你创建描述符性质的类或者接口时,一旦其中包含重复性的工 作,就可以考虑使用注解来简化与自动化该过程。 Java提供了四种元注解,专门负责新注解的创建工作
当然它也支持自定义 Java 标注。 网上很多关于 Java Annotation 的文章,看得人眼花缭乱。Java Annotation 本来很简单的,结果说的人没说清楚;弄的看的人更加迷糊。 我按照自己的思路,对 Annotation 进行了...
该demo 主要通过java注解功能和反射机制 来仿xtuils 的数据库功能 和findViewByID 功能
自定义Result,自定义Annotation的实例
我们在项目开发过程中,可能会对一些公用方法抽成工具类进行使用。如果我们把这些方法再抽成注解的形式,在一些业务情况下是否更灵活一些呢? 示例是纯净的,只引入了需要的架包,启动后直接访问:ip:port/user/test ...
java注解原始代码自定义Java注释 教程如何在以下位置创建自定义Java注释的源代码