什么是注解
- 提供一种为程序元素设置元数据的方法
- 元数据是添加到成员元素(方法、字段、类、包等)上的额外信息
- 注解是一种分散式的元数据设置方式,XML是集中式的方式
- 注解不能干扰程序代码的运行
注解的功能
- 作为特定的标记,用于告诉编译器一些信息
如@Override,用于检测重写的方法是否与源方法一致 - 编译时动态处理,如生成动态代码
- 运行时动态处理,作为额外的信息载体,如获取注解信息
注解分类
- 标准注解:Override、Deprecated、SuppressWarnings
- 元注解:@Retenion、@Target、@Inherited、@Documentd
- 自定义注解
元注解
用于修饰注解的注解
-
@Retenion:注解的生命周期
-
@Inherited:是否允许子类继承该注解
-
@Documentd:注解是否应当被包含在javadoc文档中
-
@Target:注解的作用目标
1). package、types(类、接口、枚举、Annotation类型)
2). 类型成员(方法、构造方法、成员变量、枚举值)
3). 方法参数和本地变量(如循环变量、catch参数)