文章目录
- 注解概述
-
- 注解与注释
- 常见的 Annotation
- 最基本的注解使用
-
- @Override
- @Override
- @SuppressWarnings
- 元注解
-
- @Retention
- @Target
- @Documented
- @Inherited
- 自定义注解
-
- 格式
- 定义
- 使用
注解概述
注解(Annotation)是从 JDK5.0 开始引入,以“
@注解名
”在代码中存在。例如:
@Override
@Deprecated
@SuppressWarnings(value=”unchecked”)
Annotation 可以像修饰符一样被使用,可用于修饰包、类、构造器、方法、成员变量、参数、局部变量的声明。还可以添加一些参数值,这些信息被保存在Annotation 的 “name=value” 对中。
注解可以在类编译、运行时进行加载,体现不同的功能。
注解与注释
注解和注释是两种完全不同的概念。
- 注释是对代码的说明和描述,它们不会影响程序的执行逻辑。
- 注解则是一种元数据,它可以影响程序的编译、解析和运行行为。
- 注解是可以被程序读取和解析的。
- 注释仅仅是用于程序员阅读代码的辅助说明。
常见的 Annotation
- @Override:用于标记子类方法覆盖父类方法。
- @Deprecated:用于标记过时的方法或类。
- @SuppressWarnings:用于抑制编译器警告。
- @FunctionalInterface:用于标记函数式接口。
- @SuppressWarnings:用于抑制特定类型的警告。
- @author 标明开发该类模块的作者,多个作者之间使用,分割。
- @version 标明该类模块的版本。
- @return 对方法返回值的说明,如果方法的返回值类型是 void 就不能写。
- @exception 对方法可能抛出的异常进行说明 ,如果方法没有用 throws 显式抛出的异常就不能写。
最基本的注解使用
@Override
@Override
它用于指示一个方法是覆盖了父类中的方法。
class Parent {
public void print() {
System.out.println("Parent's print method");
}
}
class Child extends Parent {
@Override
public void print() {
System.out.println("Child's print method");
}
}
public class Main {
public static void main(String[] args) {
Child child = new Child();
child.print(); // 输出 "Child's print method"
}
}
@Override
@Deprecated 它用于标记方法、类或字段已经过时不推荐使用。当您在新代码中使用已经过时的方法、类或字段时,编译器会发出