Java @Target 注释
当我们开始学习 Java 时,我们经常对代码块中写的 @override 和 @inherited 等符号感到疑惑。它们是一种特殊的标签,称为注释,可应用于类、方法、字段、参数和代码的其他元素。@Target 注释是元注释类型之一,它指定定义的注释类型适用于哪个代码块元素。不要被这些术语弄糊涂了,我们将在本文中消除所有疑虑和困惑。
Java 的 @Target 注释
我们需要了解的第一件事是注释是什么以及它们在 Java 中的用途是什么。
注释
它们是 Java 的一项强大功能,允许我们向代码添加元数据。在这里,术语元数据是指有关特定代码块的附加信息。它们可用于各种目的,包括文档、验证、测试、依赖注入等等。它们前面有"@"符号,可以具有提供附加信息的可选属性。
Java 支持两种类型的注释:内置和自定义。内置注释具有预定义的含义和行为。
以下是一些内置注释 -
@Override - 它表示方法覆盖了超类或接口中的另一个方法。
@Deprecated - 它用于将元素标记为过时,以便在使用时生成警告。
@SuppressWarnings - 抑制编译器警告。
到目前为止,我们已经了解了注释及其一些预定义的注释。现在,让我们讨论如何创建自定义注释。
创建我们自己的注释
第一步是使用 @interface 关键字及其后的注释名称进行声明。然后,下一步是添加一些描述新创建的注释的属性。属性可以是一些变量。
语法
@interface nameOfAnnotation { // 声明
// 属性
}
@nameOfAnnotation( values ) // 初始化
示例
在下面的例子中,我们将创建一个名为"Author_details"的注释,以及它的两个强制属性"name"和"email"。
// 声明注释
@interface Author_details {
// 注释的属性
String name();
String email();
}
// 使用注释
@Author_details(name = "Shriansh Kumar", email = "shriansh.kumar@tp.com")
public class Example1 {
public static void main(String[] args) {
System.out.println("This is an example of Annotation");
}
}
输出
This is an example of Annotation
如何使用 @Target 注释注释
有时,用户创建的注释可能无法传达其全部目的。对于这种情况,Java 提供了四个元注释,即 @Documentation、@Target、@Retention 和 @Inherited,以注释的形式向该用户定义的注释提供另一个元数据。它将帮助编译器在编译期间强制执行所需的功能。
@Target 注释将 java.lang.annotation.ElementType 枚举中的值数组作为其参数。ElementType 枚举定义了可以在 Java 中注释的元素的可能类型。这些值是 −
ANNOTATION_TYPE − 注释类型声明
CONSTRUCTOR − 构造函数声明
FIELD − 字段声明
LOCAL_VARIABLE − 局部变量声明
METHOD − 方法声明
PACKAGE − 包声明
PARAMETER − 参数声明
TYPE − 类、接口、枚举或记录声明
TYPE_PARAMETER − 类型参数声明
TYPE_USE − 类型的使用
语法
@Target({ElementType.nameOfanyValues})
@interface nameOfCustomAnnotation {
// 注释的属性在此处
}
示例
在此示例中,我们将使用 @Target 创建一个自定义注释,其值为"TYPE",这意味着此注释适用于类、接口和枚举。
import java.lang.annotation.*;
// 声明注释
@Target({ElementType.TYPE})
@interface Author_details {
// 注释的属性
String name() default "Shriansh Kumar";
String email() default "shriansh.kumar@tp.com";
}
// 使用注解
@Author_details
public class Example2 {
public static void main(String[] args) {
System.out.println("使用 @Target 注释注解");
}
}
输出
使用 @Target 注释注解
结论
在本文中,我们首先学习了内置注解,在后面的部分中,我们借助示例程序讨论了创建和使用自定义注解的过程。我们还发现了使用 @Target 注释来注释另一个注释。请注意,注释只是告诉我们有关代码块的信息,它不会影响整个代码的工作。
相关文章
有用资源
java 参考教程 - 该教程包含有关 java 的更多信息:https://www.cainiaomax.com/java/

