1. 注解
作用:对我们的程序进行标注和解释
- @Override: 描述子类重写父类的方法
- @Deprecated: 描述方法已过时
- @SuppressWarinings: 压制警告
2. 自定义注解
public @interface 注解名称{
// 类型:基本数据类型 String Class 注解 枚举 以上类型的一维数组如 int数组 枚举数组...等等
public 属性类型 属性名 () default 默认值;
}
如没有给出默认值,则在使用该注解时要传递值
如果该注解只有一个value注解没有默认值,则使用该注解时传递参数可以省略name
3. 元注解
描述注解的注解
@Target: 指定了注解能在哪里使用
- ElementType.FIELD: 成员变量
- ElementType.TYPE: 类
- ElementType.METHOD: 方法
@Retention: 注解的生命周期(保留时间)
- RetentionPolicy.RUNTIME: 如果没有指定时间,则只能在java中存活,编译成class文件后注解消失
- @Inherited: 表示修饰的自定义注解可以被子类继承
- @Documented: 表示该自定义注解,会出现在API文档里面
4. 获取方法中是否存在指定注解
- isAnnotationPresent(注解的字节码): 判断方法中是否有指定注解 返回布尔值 注意使用改方法判断时,注解要设置生命周期保留到运行期间 @Retention(RetentionPolicy.RUNTIME)