文章目录
1 注解概念
1.1 注解 Annotation
注解不是程序本身的一部分,但可以像注释一样对程序做解释说明,但与注释不同的是注解可以被编译器读取并解析
注解是以 @注解名
存在于代码中的
注解还可以添加一些参数,如@SuppressWarnings(value="unchecked")
注解可以附加在package,class,method,field等上面,甚至包括构造方法和参数,可以通过反射机制来实现对这些注解的访问
1.2 内置注解
@Override
此注解只适用于修饰方法
表示该方法重写了父类的方法
@Deprecated
此注解可以用于修饰方法,属性和类
但加上该注解的元素不鼓励开发者使用,通常因为它们很危险或存在更好的选择
@SuppressWarnings
此注解用来抑制编译时的警告信息
需要添加参数才能使用,如 all unchecked
1.3 元注解
元注解的作用就是负责注解其它注解,即描述该注解的特性,用于自定义的注解中
@Target
用于描述注解的使用范围
即类,方法,成员...
@Rentention
用于描述注解的生命周期
即源码,字节码,运行时
@Document
说明该注解将被包含在JavaDoc中
@Inherited
说明子类可以继承父类中的该注解
1.4 自定义注解
除了在注解中设置过默认值之外的属性,使用注解时注解的各个属性都必须要有值
如果只有一个属性,一般设置属性名为value
2 注解的简单使用
2.1 为类及其元素添加注解
2.2 使用反射机制获取注解信息
通过自定义注解,就可以给类及其元素添加带有属性的注解,就可以通过反射机制获取类中的注解和注解中的属性
2.2.1 获取注解
2.2.2 获取注解中的属性
获取对类的注解中的属性:
获取类的注解中的属性和方法的注解及属性: