元注解介绍

元注解使用

用注解的方式注解获取登录的用户信息_注解实现注入登录用户信息_小白向前冲的博客-CSDN博客

一.元数据:

元数据从metadata一词译来,就是“关于数据的数据”的有意思。元数据可以用来创建文档,跟踪代码的依赖性,执行编译时格式检查,替代已有的配置文件。元数据以标签的形式存在于java代码中,元数据标签的存在并不影响程序代码的编译和执行,被用来生成其它的文件活只在运行时知道被运行代码的描述信息。

作用:

1.生成文档,例:@param@return

           2.跟踪代码依赖性,实现替代配置文件功能。常见的spring2.5开始的基于注解配置。作用就是减少配置。现在框架基本都是用了这种配置来减少配置文件的数量。

            3.在编译时进行格式检查,如@override放在方法前,如果这个方法并不是覆盖了超类方法,则编译时就能检查出

二.注解的分类

根据注解参数的个数分类

1.标记注解:一个没有成员定义的Annotation类型被称为标记注解

2.单值注解:只有一个值

3.完整注解:拥有多个值

根据注解是用方法和用途

1.JDK内置系统注解

2.元注解

3.自定义注解

三.内置注解

JavaSE中内三个标准注解,定义中java.lang中

@Override

限定重写父类方法,若想要重写父类的一个方法时,需要使用该注解告知编译器我们正在重写也该方法。如此一来,当父类的方法被删除或修改了,编译器会提示错误信息;或者该方法不是重写也会提示错误。@Override注解只能用于方法,不能用于其他程序元素

@Deprecated

标记已过时,让程序知道这个方法已弃用。

@SuppressWarnings(不理解)

抑制编译器警告,该注解仅仅告知编译器,忽略它们产生了特殊警告。           

四.自定义注解

@Interface:用来声明一个注解。注解类里的每一个方法实际上是声明了一个配置参数。方法的名称就是参数名称,返回值类型就是参数的类型。可以通过default来声明参数的默认值

@interface Simple

元注解

元注解的作用就是负责注解其他注解。

Java5.0定义了4个标准的meta-annotation类型,它们被用来提供对七它annotation类型作说明。java5.0定义的元注解有四个,在java.lang.annotation包中可以找到

@Target

作用:用于描述注解的使用范围。表示支持注解的程序元素的种类,一些可能的值有TYPE,METHOD,CONSTTRUCTOR,FIELD等等。如果Target元注解不存在,那么该注解句可以使用中任何程序元素之上。

取值有(ElementType):

1.CONSTRUCTOR:用于描述构造器

2.FIELD:用于描述域

3.LOCAL_VARIABLE:用于描述局部变量

4.METHOD:用于描述方法

5.PACKAGE:用于描述包

6.PARAMETER:用于描述参数

7.TYPE:用于描述类,接口(包括注解类型)或enum声明

@Retention

作用:表示需要值什么级别保存该注释信息,用于描述注解的生命周期,表示注解类型保留时间的长短。

取值(RetentionPoicy)有:

1.SOURCE:在源文件中有效(即源文件保留)

2.CLASS:在class文件中有效

3.RUNTIME:中运行时有效(即运行时保留)

@Documented

作用:表示使用该注解的元素被javadoc或类似工具文档化,它应用于类型声明,类型声明的注解会影响客户端对注解元素的使用。如果一个类型声明添加了Doumented注解,那么它的注解会成为被注解元素的公共API的一部分,@Documented是一个标记注解

@Inherted

作用:表示一个注解类型会被自动继承,如果用户中类声明的时候查询注解类型,同时类声明中也没有这个类型的注解,那么注解类型会自动查询该类的父类,这个过程将会不停的重复,直到该类型的注解被找到为止,或是到达类结构的顶层

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值