java深入技术九 (注解)

时间:2021-11-10 15:25:33

java注解 (Annotation) 一般起到说明,配置的作用,在java.lang.annotation 定义,本质上没有增强java的能力

1.常用注解:@Override,强制编译器检查标注的方法覆盖了父类的方法

@Deprecated 警告使用者方法和类已过时

@SupperssWarings(unchecked) 编译时忽略警告信息

警告类型:serial ,unchecked, unused ...all

2.元注解

元注解是注解的注解,在定义新注解时使用

@Retention 指定新注解的生命周期

@Target标明新注解可标注的位置(类,方法上)

@Inherited 标明此新注解在标注时,可被标注类的子类继承

@Documented 被注解类在生成文档时也包含新注解的信息

3.自定义注解的语法public @interfaceXXX{String info()}

声明注解像枚举一样,注解也是一种特殊的java类,有特殊的声明和使用语法

声明注解类

public @interface MyAnnotation{}

声明注解内容(注解内容以字段的形式赋值,以方法的形式取得注解内容的值)

public @interface MyAnnotation{

String//注解类型 info()//注解的内容 default ” info 的默认值“;

}

标注新注解的声明周期 @ Target(value=ElementType.TYPE)

标注新注解的作用位置@Retention(value=RetentionPolity.RUNTIME)

使用新注解

标注

获取注解内容

MyAnnotation myAnnotation=(MyAnnotation)clazz.getAnnotation(MyAnnotation.class);

String info=myAnnotation.info();

4.自定义注解的使用(通过反射操作)