java元注解(注解在注解上的注解)
//ElementType.TYPE 给类、接口、枚举上使用
@Target(ElementType.TYPE)//给注解进行注解,表示该注解可以用在什么地方
//@Retention(RetentionPolicy.CLASS)//表示注解传递存活时间,CLASS表示注解保留到编译进行时期,不会被加载到jvm中
@Retention(RetentionPolicy.RUNTIME)//注解可以保留到程序运行时,并被加载到jvm中,因为反射获取的时类的运行时的状态,所以可以通过反射机制读取注解的信息,这个使用较多
public @interface AnnotationClass {
/**
* 元注解:
* ★ 元注解:JDK提供了几个特殊的注解,只能用在注解上面。
* @Target:表示该注解可以用于什么地方,取值如下:
* ElementType.ANNOTATION_TYPE 可以给一个注解进行注解
* ElementType.CONSTRUCTOR 可给构造方法进行注解
* ElementType.FIELD 可给属性进行注解
* ElementType.LOCAL_VARIABLE 可给局部变量进行注解
* ElementType.METHOD 可给方法进行注解
* ElementType.PACKAGE 可给一个包进行注解
* ElementType.PARAMETER 可给一个方法内的参数进行注解
* ElementType.TYPE 可给一个类型进行注解,比如类、接口、枚举
* @Retention:表示注解传递存活时间。取值如下:
* - RetentionPolicy.SOURCE 注解只在源码阶段保留,在编译器编译时它将被丢弃。
* - RetentionPolicy.CLASS 注解只被保留到编译进行的时候,它并不会被加载到 JVM 中。
* - RetentionPolicy.RUNTIME 注解可保留到程序运行时并被加载到 JVM 中,因此可通过反射机制读取注解的信息。
* @Documented:将注解包含到 Javadoc 中
* @Inherited:允许子类继承父类中的注解 如父类Animal有一个注解@Test,且@Test注解上有@Inherited注解,
* 那么该父类Animal的子类Cat也默认有@Test注解
*/
}
java元注解(注解在注解上的注解)的更多相关文章
- Springboot使用自定义注解实现简单参数加密解密(注解+HandlerMethodArgumentResolver)
前言 我黄汉三又回来了,快半年没更新博客了,这半年来的经历实属不易,疫情当头,本人实习的公司没有跟员工共患难, 直接辞掉了很多人.作为一个实习生,本人也被无情开除了.所以本人又得重新准备找工作了. 算 ...
- Java开发笔记(八十二)注解的基本单元——元注解
Java的注解非但是一种标记,还是一种特殊的类型,并且拥有专门的类型定义.前面介绍的五种内置注解,都可以找到对应的类型定义代码,例如查看注解@Override的源码,发现它的代码定义是下面这样的: @ ...
- 使用Java元注解和反射实现简单MVC框架
Springmvc的核心是DispatcherServlet来进行各种请求的拦截,进而进行后续的各种转发处理.流程图如下: 说明:客户端发出一个http请求给web服务器,web服务器对http请求进 ...
- Java 注解指导手册(上)
编者的话:注解是java的一个主要特性且每个java开发者都应该知道如何使用它. 我们已经在Java Code Geeks提供了丰富的教程, 如Creating Your Own Java A ...
- java反射之获取所有方法及其注解(包括实现的接口上的注解),获取各种标识符备忘
java反射之获取类或接口上的所有方法及其注解(包括实现的接口上的注解) /** * 获取类或接口上的所有方法及方法上的注解(包括方法实现上的注解以及接口上的注解),最完整的工具类,没有现成的工具类 ...
- Spring注解与Java元注解小结
注解 Annotation 基于注解的开发,使得代码简洁,可读性高,简化的配置的同时也提高了开发的效率,尤其是SpringBoot的兴起,随着起步依赖和自动配置的完善,更是将基于注解的开发推到了新的高 ...
- Java元注解,简单案例
[注解] 程序中有 注释 和注解 * 注释:给开发人员. * 注解:给计算机看的. 注解使用:学习框架支持注解开发. [JDK提供的注解] @Override :描述方法的重写. @SuppressW ...
- java spring是元编程框架---使用的机制是注解+配置
java spring是元编程框架---使用的机制是注解+配置
- Java获取类方法上的注解
, fullName.indexOf("$$")); try { clz = Class.forName(fullName); } catch (ClassNotFoundExce ...
随机推荐
- SQLite的.NET应用自适应32位/64位系统 z
如果一个.NET应用要自适应32位/64位系统,只需要在项目的“目标平台”设置为“Any CPU”.但是如果应用中使用了SQLite,情况就不同了. SQLite的.NET开发包来自是System.D ...
- poj2253 Frogger dijkstra
题目大意: 给出n个岛的坐标,前两个坐标分别为A青蛙和B青蛙所在岛的坐标,A青蛙想到达B青蛙所在的岛,A可以从某一个岛跳到任意其它一个岛上,则A到B的每条路径都有一个跳的最远的距离Xi,求这些最远距离 ...
- 密钥导出函数(Key derivation function)
在密码学中,密钥导出函数(KDF)使用伪随机函数从秘密值(eg.主密钥)导出一个或多个密钥.KDF可用于将密钥扩展到更长的密钥或获得所需格式的密钥(eg.将作为Diffie-Hellman密钥交换的结 ...
- CF498D Traffic Jams in the Land
嘟嘟嘟 题面:有n条公路一次连接着n + 1个城市,每一条公路有一个堵塞时刻a[i],如果当前时间能被a[i]整除,那么通过这条公路需要2分钟:否则需要1分钟. 现给出n条公路的a[i],以及m次操作 ...
- 问题 A: B 继承 圆到圆柱体
题目描述 定义了Circle圆形类,在此基础上派生出Cylinder圆柱体类. Circle圆形类定义如下: class Circle { public: Circle(double r):radiu ...
- webstorm识别php代码
在 setting --editor--filetype---找到html 在下面的框里点右边加好,添加*.php
- asp.net 在repeater控件中加按钮
在repeater中加入方法有两种方法: 第一种:是对repeater控件的行添加OnItemCommand事件,添加方法也是有两种 1.在设计页面中,选中repeater控件右击==>属性== ...
- 时空隧道FQ
给你推荐一款海外网站加速工具,为科技工作者.海外归国人员.企业团队.外贸工作者提供海外上网服务,永久免费. 国外网址:https://chrome.google.com/webstore/detail ...
- Angularjs实例3
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- LeetCode10.正则表达式匹配 JavaScript
给定一个字符串 (s) 和一个字符模式 (p).实现支持 '.' 和 '*' 的正则表达式匹配. '.' 匹配任意单个字符. '*' 匹配零个或多个前面的元素. 匹配应该覆盖整个字符串 (s) ,而不 ...