文章目录
- 一、什么是注解
- 二、注解有什么作用
- 三、常见的Java注解及其功能介绍和示例
- @Override
- @Deprecated
- @SuppressWarnings
- @FunctionalInterface
- @SafeVarargs
- @SuppressWarnings
一、什么是注解
Java中所有以@开头的语句被称为注解(Annotation)。
注解是一种元数据,它可以用于类、方法、变量等各种程序元素上。它提供了关于程序代码的额外信息,可以用于在编译时和运行时进行处理。
二、注解有什么作用
- 提供编译时的元数据:注解可以在编译时提供额外的信息,帮助编译器进行代码检查和优化。
- 提供运行时的元数据:注解可以在运行时提供额外的信息,帮助程序在运行时做出相应的处理。
- 简化配置和开发:注解可以用于简化配置文件的编写,减少重复的代码和配置项。
- 提供框架支持:注解可以用于框架中,帮助框架进行自动化的处理和生成代码。
三、常见的Java注解及其功能介绍和示例
@Override
用于标记方法覆盖父类的方法。它可以确保子类正确地覆盖了父类的方法。
@Override
public void doSomething() {// 子类的实现
}
@Deprecated
用于标记已过时的方法或类。它提醒开发者不再推荐使用该方法或类,并建议使用替代方法或类。
@Deprecated
public void oldMethod() {// 过时的方法实现
}
@SuppressWarnings
用于抑制编译器警告。它可以告诉编译器忽略特定类型的警告。
@SuppressWarnings("unchecked")
public List<String> getList() {// 忽略类型转换警告return (List<String>) someObject;
}
@FunctionalInterface
用于标记函数式接口。它确保接口只有一个抽象方法,以便可以使用Lambda表达式进行实现。
@FunctionalInterface
public interface MyInterface {void doSomething();
}
@SafeVarargs
用于标记可变参数方法的安全性。它确保方法不会对可变参数数组进行不安全的操作。
@SafeVarargs
public final <T> void process(T... elements) {// 安全的可变参数方法实现
}
@SuppressWarnings
用于抑制编译器警告。它可以告诉编译器忽略特定类型的警告。
@SuppressWarnings("unchecked")
public List<String> getList() {// 忽略类型转换警告return (List<String>) someObject;
}