元注解--------@Tatget  @inherited  @Retention @Documented

@Retention:这个注解注在其他注解上,并用来说明如何存储已被标记的注解。用来标记注解并提供注解的信息。可能 的值是:

  • SOURCE:  表明这个注解会被编译器忽略,并只会保留在源代码中。
  • CLASS:      表明这个注解会通过编译驻留在CLASS文件,但会被JVM在运行时忽略,正因为如此,其在运行时不可见。
  • RUNTIME:表示这个注解会被JVM获取,并在运行时通过反射获取。

@Target:这个注解用于限制某个元素可以被注解的类型。例如:

ANNOTATION_TYPE --------------表示该注解可以应用到其他注解上

CONSTRUCTOR -------------------表示可以使用到构造器上FIELD 表示可以使用到域或属性上

LOCAL_VARIABLE-----------------表示可以使用到局部变量上。

METHOD---------------------------可以使用到方法级别的注解上。

PACKAGE--------------------------可以使用到包声明上。

PARAMETER-----------------------可以使用到方法的参数上

TYPE-------------------------------可以使用到一个类的任何元素上

@Documented:被注解的元素将会作为Javadoc产生的文档中的内容。注解都默认不会成为成为文档中的内容。这个注解可以对其它注                              解使用。

@Inherited:在默认情况下,注解不会被子类继承。被此注解标记的注解会被所有子类继承。这个注解可以对类使用。

经常用到的一些注解:

  • @Override:向编译器说明被注解元素是重写的父类的一个元素。在重写父类元素的时候此注解并非强制性的,不过可以在重写错误时帮助编译器产生错误以提醒我们。比如子类方法的参数和父类不匹配,或返回值类型不同。
  • @Repeatable:说明该注解标识的注解可以多次使用到同一个元素的声明上。
  • @Test:这个注解向JUnit说明这个被注解的方法一定是一个可执行的测试方法。这个注解只能标识在方法上,并且被JVM保留至运行时。
  • @Before:这个注解用来向JUnit说明被标记的方法应该在所有测试方法之前被执行。这对于在测试之前设置测试环境和初始化非常有用。同样只适用于方法上:
  • @After:这个注解用来向JUnit说明被注解的方法应该在所有单元测试之后执行。这个注解通常用来销毁资源,关闭,释放资源或者清理,重置等工作。
  • @Ignore:这个方法用来向JUnit说明被注解的方法应该不被当作测试单元执行。即使它被注解成为一个测试方法,也只能被忽略。
  • @Component:说明被标记的元素,在本例中是一个类,是一个自动检测的目标。这意味着被注解的类,将会被Spring容器实例化并管理。
  • @Autowired:Spring容器将会尝试通过类型(这是一种元素匹配机制)使用这个set方法来自动装配。此注解也可以使用在构造器和属性上,Spring也会根据注解的地方不同采取不同的操作。
  • @FixMethodOrder:指定执行的顺序,正常情况下Junit处理程序负责它按照完全随机的无法预知的顺序执行。当所有的测试方法都相互独立的时候,不推荐使用这个注解。但是,当测试的场景需要测试方法按照一定规则的时候,这个注解就派上用场了。
  • @Deprecated:说明被标记的元素不应该再度使用。这个注解会让编译器产生警告消息。可以使用到方法,类和域上。相应的解释和  原 因,包括另一个可取代的方法应该同时和这个注解使用。

  • @SuppressWarnings:说明编译器不会针对指定的一个或多个原因产生警告。

  • @FunctionalInterface:这个注解表示一个函数式接口元素。函数式接口是一种只有一个抽象方法(非默认)的接口。编译器会检查被注解元素,如果不符,就会产生错误。

转载于:https://www.cnblogs.com/Zhong-Xin/p/5359807.html

java 注解(annotation)基础学习相关推荐

  1. 深入理解Java注解Annotation之注解处理器

    如果没有用来读取注解的方法和工作,那么注解也就不会比注释更有用处了.使用注解的过程中,很重要的一部分就是创建于使用注解处理器.Java SE5扩展了反射机制的API,以帮助程序员快速的构造自定义注解处 ...

  2. Java注解(Annotation)详解

    转: Java注解(Annotation)详解 幻海流心 2018.05.23 15:20 字数 1775 阅读 380评论 0喜欢 1 Java注解(Annotation)详解 1.Annotati ...

  3. java线程之基础学习

    java线程之基础学习总结 线程实现的两种方式: 在java中可以有两种方式实现多线程操作,一种是继承Thread类,另外一种是实现Runnable接口. 继承Thread类 Thread类是在jav ...

  4. Java注解Annotation 完成验证

    Java注解Annotation用起来很方便,也越来越流行,由于其简单.简练且易于使用等特点,很多开发工具都提供了注解功能,不好的地方就是代码入侵比较严重,所以使用的时候要有一定的选择性. 这篇文章将 ...

  5. java注释和注解_深入理解JAVA注解(Annotation)以及自定义注解

    Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制.Java 语言中的类.方法.变量.参数和包等都可以被标注.注解可以看作是一种特殊的标记,在程序在编译或 ...

  6. java 注解: Annotation

    java 注解: Annotation 普通注解 自定义注解 元注解 注解: 位于源码中,用来修饰程序的元素,但不会对被修饰的对象有直接的影响. 可增加程序的动态性. 普通注解 普通注解:为java代 ...

  7. Java注解annotation invalid type of annotation member

    文章目录 Java注解annotation : invalid type of annotation member 1.什么是invalid type of annotation member 2.哪 ...

  8. Java 注解(Annotation)使用方法归纳

    Java注解Annotation使用方法归纳 简介 注解是从JDK5开始支持,是Java对元数据的一种特殊支持.与注释有一定区别,可以理解为代码上的特殊标记,通过这些标记我们可以在编译,类加载,运行等 ...

  9. 深入JAVA注解(Annotation):自定义注解

    一.基础知识:元注解 要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前,我们就必须要了解Java为我们提供的元注解和相关定义注解的语法. 元注解: 元注解的作用就是负责注解 ...

最新文章

  1. matlab--微积分与微分方程
  2. 数论基础之快速幂(详细教程)
  3. python tfidf特征变换_Python机器学习之“特征工程”
  4. 如何从Fiori launchpad发出的请求判断出后台是哪个网关系统在响应
  5. MSN消息提示类(II)
  6. php 连接主从redis,PHP7对Redis的扩展及Redis主从搭建
  7. [bzoj1009](HNOI2008)GT考试 (kmp+矩阵快速幂加速递推)
  8. mysql 转ascii_MySQL ascll()函数
  9. db2 c语言,DB2数据库安全(二)——身份认证
  10. dpdk Ipv4组包逻辑解析
  11. Linux系统centos下如何通过命令查看CPU内存存储等硬件信息?
  12. 5个物联网商业案例及其带给我们的启示
  13. opencv 眼部模糊
  14. 照片怎么无损放大尺寸,三种方法无损放大照片
  15. 多种内网穿透工具的比较
  16. ​创新型中小企业评价标准
  17. 2016-年蓝桥杯C-(A组)赛题-网友年龄
  18. 什么是高防CDN防护
  19. 新版Qq为什么不受欢迎?
  20. elementui 限制输入字数

热门文章

  1. 深度优先遍历和广度优先遍历_图与深度优先搜索和广度优先搜索
  2. 95-25-010-命令-topic 创建过程
  3. 【Elasticsearch】es 使用Rollup在Elasticsearch 6.3中合并旧日志 上卷 Rollup
  4. 【elasticsearch】elasticsearch 7 index.lifecycle.rollover_alias does not point to index
  5. 【Linux】Linux Systemd 启动守护进程
  6. 【Flink】Flink 报错 exited with a non-zero exit code 1
  7. Mvn : Maven的依赖管理 依赖冲突 解决思路
  8. 【Linux】linux系统很卡排除
  9. 从性能方面选择for,map和forEach
  10. 云计算实战系列十四(MySQL基础)