注解

举报
京与旧铺 发表于 2022/06/29 20:01:12 2022/06/29
【摘要】 注解1、注解,或者叫注释类型,英文单词是:Annotation.2、注解Annotation是一种引用数据类型。编译之后也是生成 xxx.class文件。3、注解的语法格式: [修饰符列表] @interface 注解类型名{ }4、注解怎么使用?用在什么地方?第一:注解使用时的语法格式是: @注解类型名​第二:注解可以出现在类上、属性上、方法上、变量上、注解类型上等。 (默认...

注解

1、注解,或者叫注释类型,英文单词是:Annotation.

2、注解Annotation是一种引用数据类型。编译之后也是生成 xxx.class文件。

3、注解的语法格式: [修饰符列表] @interface 注解类型名{ }

4、注解怎么使用?用在什么地方?

第一:注解使用时的语法格式是:
    @注解类型名
​
第二:注解可以出现在类上、属性上、方法上、变量上、注解类型上等。
    (默认情况下,注解可以出现在任意位置)

5、关于JDK lang包下的Override注解

源代码: public @interface Override{ } @Override这个注解只能注解方法; @Override这个注解是给编译器参考的,和运行阶段没有关系; 凡是Java中的方法带有这个注释的,编译器都会进行编译检查,如果这个方法不是重写父类的方法,编译器报错。

6、元注解 用来标注“注解类型”的“注解”,称为元注解。

常见的元注解 Target Retention

关于Target注解: 这个Target注解用来标注“被标注的注解”可以出现在哪些位置上。 @Target({ElementType.METHOD}):表示“被标注的注解”只能出现在方法上。 @Target(ElementType.TYPE):表示“被标注的注解”只能出现在类上。 FIELD,PARAMETER,CONSTRUCTOR,LOCAL_VARIABLE, ANNOTATION_TYPE,PACKAGE,TYPE_PARAMETER, TYPE_USE, MODULE;

@Target还有以上的属性,因为Element元注解的属性是数组,所以可以添加多个属性。


关于Retention注解: 这个Retention注解用来标注“被标注的注解”最终保存在哪里。

@Retention(RetentionPolicy.SOURCE):表示该注解只被保留在java源文件中。 @Retention(RetentionPolicy.CLASS):表示该注解只被保留在class文件中。 @Retention(RetentionPolicy.RUNTIME):表示该注解只被保留在class文件中,并且可以被反射机制所读取。

7、关于Deprecated 表示这个注解标注的元素已过时。 这个注解主要是向其它程序员传达一个信息,告知已过时,有更好的解决方案存在。

8、注解当中的属性可以是哪一种类型? 属性的类型可以是: byte、short、int、long、float、double、char、String、Class、枚举类型 以及以上每一种的数组形式。

注意:如果数组里面的元素只有一个,可以省略大括号 如果属性名为value,而且只有一个属性,可以省略属性类型不写。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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