背景:在面试时候问过关于注解的问题,工作中也用到过该java的特性,但是也没有深入的了解。
ps:注解最通俗易懂的解释
注解是一系列元数据,它提供数据用来解释程序代码,但是注解并非是所解释的代码本身的一部分。注解对于代码的运行效果没有直接影响。
总结
如果注解难于理解,你就把它类同于标签,标签为了解释事物,注解为了解释代码。
注解的基本语法,创建如同接口,但是多了个 @ 符号。
注解的元注解。
注解的属性。
注解主要给编译器及工具类型的软件用的。
注解的提取需要借助于 Java 的反射技术,反射比较慢,所以注解使用时也需要谨慎计较时间成本
为什么要学习注解?
- 能够读懂别人使用注解实现的开源库
- 让编程变得更加简洁
注解的功能
- 作为特定的标记,用于告诉编译器一些信息
- 编译时动态处理,如动态生成代码
- 运行时动态处理,作为额外信息的载体,如得到注解信息
注解的基本语法
注解和反射机制
注解处理器
java8中元注解@Repeatable
在Java8中 ElementType 新增两个枚举成员,TYPE_PARAMETER 和 TYPE_USE ,在Java8前注解只能标注在一个声明(如字段、类、方法)上,Java8后,新增的TYPE_PARAMETER可以用于标注类型参数,而TYPE_USE则可以用于标注任意类型(不包括class)。