java中的元注解

简介:

 

一、元注解的概念

java中有4个元注解:@Retention、@Target、@Document、@Inherited。所谓元注解就是注解的注解。

 

 

二、注解介绍

 

①@Retention

@Retention——注解的保留位置

 

注解仅存在于源码中,在class字节码文件中不包含
@Retention(RetentionPolicy.SOURCE)

 

默认的保留策略,注解会在class字节码文件中存在,但运行时无法获得
@Retention(RetentionPolicy.CLASS)

 

注解会在class字节码文件中存在,在运行时可以通过反射获取到
@Retention(RetentionPolicy.RUNTIME)

 

②@Target

@Target——注解的作用目标

 

接口、类、枚举、注解
@Target(ElementType.TYPE)

 

字段、枚举的常量
@Target(ElementType.FIELD)

 

方法
@Target(ElementType.METHOD)

 

方法参数
@Target(ElementType.PARAMETER)

 

构造函数
@Target(ElementType.CONSTRUCTOR)

 

局部变量
@Target(ElementType.LOCAL_VARIABLE)

 

注解
@Target(ElementType.ANNOTATION_TYPE)

 


@Target(ElementType.PACKAGE)


③@Document——说明该注解将被包含在javadoc中


④@Inherited——说明子类可以继承父类中的该注解

 

 

三、例子

@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
public @interface AnnatDemo{

}

@AnnatDemo注解作用目标是用于对方法注解并保留在运行时的环境中,可利用反射获得一个方法上的注解调用定义的方法。

 


原帖地址:http://www.cnblogs.com/Gordon-YangYiBao/archive/2012/08/07/2626340.html

本文转自IT徐胖子的专栏博客51CTO博客,原文链接http://blog.51cto.com/woshixy/1061771如需转载请自行联系原作者


woshixuye111

相关文章
|
Dubbo Java 编译器
一文搞定java元注解:Target、Retention、Documented、Inherited、Repeatable(JDK1.8新增)
一文搞定java元注解:Target、Retention、Documented、Inherited、Repeatable(JDK1.8新增)
396 0
一文搞定java元注解:Target、Retention、Documented、Inherited、Repeatable(JDK1.8新增)
Java元注解
元注解包括:@Documented、@Target、@Retention、@Inherited、@Repeatable和@Native。
Java元注解
|
XML Java 数据格式
Java之注解(初识+元注解+自定义)
注解 Annotation(注释 注解) 注释 单行注释 // 多行注释 /* */ 文档注释 /** */ 注解 1.注解的写法 @XXX [(一些信息)] 2.注解放置在哪里 类的上面 属性上面 方法上面 构造方法上面 参数前面 3.注解的作用 1.用来充当注释的作用(仅仅是一个文字的说明) @Deprecated 2.用来做代码的检测(验证) @Override *3.可以携带一些信息(内容) 文件.properties .xml 注解 4.Java中有一些人家写好的注解供我们使用 @Deprecated 用来说明方法
111 0
|
Java API
【Java 注解】自定义注解 ( 元注解 )(二)
【Java 注解】自定义注解 ( 元注解 )(二)
105 0
【Java 注解】自定义注解 ( 元注解 )(二)
|
Java
【Java 注解】自定义注解 ( 元注解 )(一)
【Java 注解】自定义注解 ( 元注解 )(一)
142 0
【Java 注解】自定义注解 ( 元注解 )(一)
|
Java Spring
JAVA元注解@interface详解
jdk1.5起开始提供了4个元注解,用来定义自定义注解的注解,它们分别是: @Target 指定注解使用的目标范围(类、方法、字段等),其参考值见类的定义:java.lang.annotation.ElementType @Documented 指定被标注的注解会包含在javadoc中。
JAVA元注解@interface详解
|
Java Spring
JAVA元注解@interface详解(@Target,@Documented,@Retention,@Inherited)。
jdk1.5起开始提供了4个元注解,用来定义自定义注解的注解,它们分别是: @Target 指定注解使用的目标范围(类、方法、字段等),其参考值见类的定义:java.lang.annotation.ElementType @Documented 指定被标注的注解会包含在javadoc中。
1062 0
|
Java 编译器 API
Java自定义注解和元注解
<div class="markdown_views"> <h1 id="自定义annotation">自定义annotation</h1> <p>先看一个注解实例:</p> <pre class="prettyprint"><code class="language-java hljs "><span class="hljs-keyword">import</span
2768 0
|
7天前
|
Java 开发者
奇迹时刻!探索 Java 多线程的奇幻之旅:Thread 类和 Runnable 接口的惊人对决
【8月更文挑战第13天】Java的多线程特性能显著提升程序性能与响应性。本文通过示例代码详细解析了两种核心实现方式:Thread类与Runnable接口。Thread类适用于简单场景,直接定义线程行为;Runnable接口则更适合复杂的项目结构,尤其在需要继承其他类时,能保持代码的清晰与模块化。理解两者差异有助于开发者在实际应用中做出合理选择,构建高效稳定的多线程程序。
28 7
|
5天前
|
安全 Java 数据库
一天十道Java面试题----第四天(线程池复用的原理------>spring事务的实现方式原理以及隔离级别)
这篇文章是关于Java面试题的笔记,涵盖了线程池复用原理、Spring框架基础、AOP和IOC概念、Bean生命周期和作用域、单例Bean的线程安全性、Spring中使用的设计模式、以及Spring事务的实现方式和隔离级别等知识点。