Java Annotation注解

参考:Java官方文档http://docs.oracle.com/javase/specs/jls/se7/html/jls-9.html#jls-9.6

注解类型:

是一种特殊类型的interface,区别在于注解声明是 @interface

特点:

1.java的注解不可显式声明父类(实际上他们都继承了Annotation类,但是你在声明时无法使用extends 关键字),也无法被泛化。

2.方法:

a) 每个方法都定义了该注解中的一个元素(Each method declaration in an
annotation type declaration defines an element of the annotation
type)。

b) 注解中的方法形参不可以有参数

c) 注解中的方法不可以抛出异常

d)方法的返回值(即注解的element)必须是如下之一: a primitive type(基础类型:int、float等), StringClass,
parameterized invocation of 
Class, enum,
annotation,array

parameterized
invocation of 
Class :在java 5后java.lang.Class为泛型类,意味着他可以有类型参数,具体指Class<...>的形式,举例: Class<?
extends Formatter> value();)

e)如果方法的声明中没有加 default 关键字,则必须在使用泛型是进行赋值

d) 如果想建立框架,在运行期间通过反射调用注解,需要你的注解加上注解@Retention(RetentionPolicy.RUNTIME),否则注解可能在编译期间就消除了。

3.如无特殊声明,注解和interface一样(都是静态的字段)

时间: 2024-12-19 00:34:07

Java Annotation注解的相关文章

自己写的基于java Annotation(注解)的数据校验框架

JavaEE6中提供了基于java Annotation(注解)的Bean校验框架,Hibernate也有类似的基于Annotation的数据校验功能,我在工作中,产品也经常需要使 用数据校验,为了方便和重用,自己写了一个简单的基于Annotation的校验框架.有兴趣的可以扩展. 框架说明: AnnotationValidable接口:所有需要使用该校验框架的类都要实现它,该类中没有任何方法需要实现,仅仅是一个表明那些类需要使用该校验框架的标识. GetFiledValue类:是一个工具类,对

第17篇-JAVA Annotation 注解

第17篇-JAVA Annotation 注解 每篇一句 :真的努力后你会发现自己要比想象的优秀很多 初学心得: 怀着一颗奋斗不息的心,一切困苦艰辛自当迎刃而解 (笔者:JEEP/711)[JAVA笔记 | 时间:2017-05-17| JAVA Annotation注解 ] 1.什么是注解(Annotation) Annotation 其实就是代码里的特殊标记, 它用于替代配置文件,也就是说,传统方式通过配置文件告诉类如何运行,有了注解技术后,开发人员可以通过注解告诉类如何运行.在Java技术

Java Annotation 注解

java_notation.html div.oembedall-githubrepos { border: 1px solid #DDD; list-style-type: none; margin: 0 0 10px; padding: 8px 10px 0; font: 13.34px/1.4 helvetica, arial, freesans, clean, sans-serif; width: 452px; background-color: #fff } div.oembedall

java Annotation 注解的使用

源码地址:https://github.com/yylxy/JavaAnnotationTest.git java Annotation 注解的使用 ,代码中有详细的注释.是用AndroidStudio写的 /** * 说明:注解创建类 * 作者: 杨阳; 创建于: 2017-06-02 16:10 */@Retention(RetentionPolicy.RUNTIME)//定义注释的生命周期@Target({ElementType.METHOD, ElementType.TYPE})//注释

JAVA - Annotation 注解 入门

Java注解提供了关于代码的一些信息,但并不直接作用于它所注解的代码内容.在这个教程当中,我们将学习Java的注解,如何定制注解,注解的使用以及如何通过反射解析注解. Java1.5引入了注解,当前许多java框架中大量使用注解,如Hibernate.Jersey.Spring.注解作为程序的元数据嵌入到程序当中.注解可以被一些解析工具或者是编译工具进行解析.我们也可以声明注解在编译过程或执行时产生作用. 在使用注解之前,程序源数据只是通过java注释和javadoc,但是注解提供的功能要远远超

Java Annotation注解语法

JAVA从J2SE5开始提供名为annotation(注释,标注)的功能.Java的annotation,可以附加在package, class, method, field等上面,相当于给它们添加了额外的辅助信息.附加在package, class, method, field等上的Annotation,如果没有外部解析工具等对其加以解析和处理的情况,本身不会对Java的源代码或class等产生任何影响,也不会对它们的执行产生任何影响. 但借助外部工具,比如javac,EJB容器等,可以对附加

深入理解Java:注解(Annotation)--注解处理器

深入理解Java:注解(Annotation)--注解处理器 如果没有用来读取注解的方法和工作,那么注解也就不会比注释更有用处了.使用注解的过程中,很重要的一部分就是创建于使用注解处理器.Java SE5扩展了反射机制的API,以帮助程序员快速的构造自定义注解处理器. 注解处理器类库(java.lang.reflect.AnnotatedElement): Java使用Annotation接口来代表程序元素前面的注解,该接口是所有Annotation类型的父接口.除此之外,Java在java.l

深入理解Java:注解(Annotation)自己定义注解入门

深入理解Java:注解(Annotation)自己定义注解入门 要深入学习注解.我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前.我们就必须要了解Java为我们提供的元注解和相关定义注解的语法. 元注解: 元注解的作用就是负责注解其它注解. Java5.0定义了4个标准的meta-annotation类型.它们被用来提供对其它 annotation类型作说明.Java5.0定义的元注解: [email protected], [email protected], [email pro

Java Annotation 及几个常用开源项目注解原理简析

PDF 版: Java Annotation.pdf, PPT 版:Java Annotation.pptx, Keynote 版:Java Annotation.key 一.Annotation 示例 Override Annotation Java 1 2 3 @Override public void onCreate(Bundle savedInstanceState); Retrofit Annotation Java 1 2 3 @GET("/users/{username}&quo