二十八、JavaSE----注解

举报
托马斯-酷涛 发表于 2022/05/26 02:02:33 2022/05/26
【摘要】 注解:         Java注解(Annotation)又称为元数据,它为我们在代码中添加信息提供了一种形式化的方法。 它是JDK1.5引入的,Java定义了一套注解,共有7个,3个在java.lang中,剩下4个在 java.lang.annot...

注解:

        Java注解(Annotation)又称为元数据,它为我们在代码中添加信息提供了一种形式化的方法。 它是JDK1.5引入的,Java定义了一套注解,共有7个,3个在java.lang中,剩下4个在 java.lang.annotation 中。

作用在代码中的注解有三个,它们分别是:

  • @Override :重写标记,一般用在子类继承父类后,标注在重写过后的子类方法上。如果发现 其父类,或者是引用的接口中并没有该方法时,会报编译错误。
  • @Deprecated :用此注解注释的代码已经过时,不再推荐使用。
  • @SuppressWarnings :这个注解起到忽略编译器的警告作用。

元注解有四个,元注解就是用来标志注解的解释。它们分别是:

  1. @Retention :标识如何存储,是只在代码中,还是编入class文件中,或者是在运行时可以通过 反射访问。
  2. RetentionPolicy.SOURCE:注解只保留在源文件,当Java文件编译成class文件的时候,注解被遗弃。

  3. RetentionPolicy.CLASS:注解被保留到class文件,但jvm加载class文件时候被遗弃,这是默认的生命周期。

  4. RetentionPolicy.RUNTIME注解不仅被保存到class文件中,jvm加载class文件之后,仍然存在。

  • @Documented :标记这些注解是否包含在JavaDoc中。

  • @Target :标记这个注解说明了 Annotation所修饰的对象范围,Annotation可被用于 packages, types (类、接口、枚举、Annotation类型)、类型成员(方法、构造方法、成员变 量、枚举值)、方法参数和本地变量(如循环变量、catch参数)。取值如下:

  • @inherited :标记这个注解是继承于哪个注解类的。

从JDK1.7开始,又添加了三个额外的注解,它们分别是

  • @SafeVarargs :在声明可变参数的构造函数或方法时,Java编译器会报unchecked警告。使 用@SafeVarargs可以忽略这些警告。
  • @FunctionalInterface :表明这个方法是一个函数式接口。
  • @Repeatable :标识某注解可以在同一个声明上使用多次。

注意:注解是不支持继承的。

文章来源: tuomasi.blog.csdn.net,作者:托马斯-酷涛,版权归原作者所有,如需转载,请联系作者。

原文链接:tuomasi.blog.csdn.net/article/details/120060318

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。