注解
1、起一个标志的作用
2、注解不能单独存在
3、注解使用的位置
1 | public enum ElementType { |
4、注解起作用的范围
有下面范围:
- source 源码级别
- classes 字节码级别
- runtime 运行时级别(经常用的范围)
5、自定义注解
// 注解使用的位置
(ElementType.TYPE)
// 起作用的范围
(RetentionPolicy.RUNTIME)
// 能出现在帮助文档中
public ClassAnnotation {
String name() default "";
}
说明:
- 1、该注解只能用于类上 @Target(ElementType.TYPE)
- 2、该注解的范围:java,class,runtime都可以
- 3、该注解有一个属性name,为String类型,默认值为””
要想获得类上面的注解,先获得类(Class);
要想获得方法上面的注解,先获得方法(Method)
方法名 | 用法 |
---|---|
Annotation getAnnotation(Class annotationType) | 获取注解在其上的annotationType |
Annotation[] getAnnotations() | 获取所有注解 |
isAnnotationPresent(Class annotationType) | 判断当前元素是否被annotationType注解 |
Annotation[] getDeclareAnnotations() | 与getAnnotations() 类似,但是不包括父类中被Inherited修饰的注解 |