@Target Annotation的使用
@Target Annotation表示的是这个Annotation可以应用在哪里,是对Annotation应用的限制,如果没有这个标识的话,Annotation可以用在任何地方,比如类上,方法上,变量、属性上等,可以从java.lang.Enum.ElementType这个枚举里选择。
1、只能用在方法上的限制的应用
java 代码
- package com.test;
-
- import java.lang.annotation.ElementType;
- import java.lang.annotation.Target;
-
- @Target(ElementType.METHOD)
- public @interface TargetTest {
- String hello();
- }
java 代码
- package com.test;
-
-
- public class TargetClass {
-
@TargetTest(hello = "abc")
-
public void doSomething()
- {
-
System.out.println("do something");
- }
- }
2、只能用于类上的限制应用
java 代码
- package com.test;
-
- import java.lang.annotation.ElementType;
- import java.lang.annotation.Target;
-
- @Target(ElementType.TYPE)
- public @interface TargetTest {
- String hello();
- }
java 代码
- package com.test;
-
-
- @TargetTest(hello = "abc")
- public class TargetClass {
-
public void doSomething()
- {
-
System.out.println("do something");
- }
- }
分享到:
相关推荐
`@Target` 通过 `java.lang.annotation.ElementType` 枚举类型来限制注解的应用位置。以下是 `ElementType` 的各种取值及其含义: 1. `ElementType.METHOD` - 注解可以应用于方法。 2. `ElementType.TYPE` - 注解...
"Java 注解 @Annotation 的具体使用" Java 中的注解(Annotation)是一种元数据,用于提供关于程序元素(如类、方法、字段等)的信息。Java 5 中引入了注解机制,自此以来,注解在 Java 中扮演着越来越重要的角色,...
- **@Target**:用来指定注解的使用范围,如`@Target(ElementType.METHOD)`表示该注解只能用于方法。 - **@Retention**:用来指定注解的生命周期,如前面提到的`@Retention(RetentionPolicy.RUNTIME)`。 - **@...
在Java编程语言中,注解(Annotation)是一种元数据,它提供了向编译器、工具或运行时系统提供额外信息的方式。自定义注解允许开发者创建自己的标记来满足特定需求,比如代码生成、验证、持久化等。本文将深入探讨...
#### 五、使用反射读取RUNTIME的Annotation信息 通过Java的反射机制,可以在运行时访问和处理注解信息,这对于框架和工具的开发尤其有用。 ```java Field field = clazz.getDeclaredField("fieldName"); ...
- **Annotation的声明**:注解使用类似于修饰符的语法进行声明,可以应用到不同的程序元素上,如`@Override`用于方法重写标识。 - **Annotation类型**:定义注解的接口,指定了注解的名称、成员及其默认值。注解类型...
7. **元Annotation**:元Annotation是用于定义其他Annotation的Annotation,例如`@Retention`定义Annotation的生命周期(编译时、类加载时或运行时),`@Target`指定Annotation可以应用到哪些程序元素,`@Documented...
本文将详细介绍 Spring MVC Annotation验证的方法,包括使用 Spring MVC 自带的 Annotation 验证和自定义 Annotation 验证。 一、Spring MVCAnnotation 验证简介 Spring MVC 框架提供了多种Annotation来实现验证,...
Annotation是Java语言中的一种元数据,它提供了在代码中附加信息的能力,这些信息可以在编译时或运行时被解析和使用。Annotation的本质是一种特殊类型的注解,它允许开发者向编译器、JVM或者工具提供关于代码的额外...
@Target(ElementType.METHOD) public @interface MyAnnotation { String value() default ""; } ``` 3. 注解的保留策略 `RetentionPolicy`枚举定义了注解的生命周期,包括: - SOURCE:注解只存在于源代码中...
#### 二、Annotation的使用场景 - **简化配置**:通过在类、方法等处使用注解,可以直接在代码中指定配置信息,而无需额外的XML文件。 - **代码分析**:开发工具和构建工具可以通过解析注解来自动化某些任务,比如...
这里定义了一个名为`MyAnnotation`的注解,`Retention`指定其生命周期,`Target`指明可以在哪些程序元素上使用。 5. **处理自定义注解** 自定义注解需要相应的处理器来处理,这通常通过Java的注解处理工具...
随后,文章深入探讨了如何自定义Annotation,包括使用`@Retention`和`@Target`注解来指定Annotation的生命周期和应用目标。最后,通过一个具体的示例展示了如何创建和使用自定义的Annotation。希望本文能够帮助读者...
Java 注解(Annotation)是Java语言的一个重要特性,它为代码提供元数据,即关于代码的信息,但这些信息不直接影响程序的运行。注解在Java中主要用于编译器检查、运行时处理、框架生成元数据等场景。本篇将深入探讨...
Java注解(Annotation)是Java语言提供的一种元数据机制,用于在代码中插入额外的信息,这些信息可以被编译器或运行时环境读取。它们主要用于简化代码的维护、提高可读性,以及实现编译时和运行时的检查。在本实例中...
此外,还可以使用Java 8以后的元数据API(如`@Retention`、`@Target`)来控制Annotation的行为,如其在编译时、运行时的可见性以及作用域。 三、Annotation的生命周期 1. `@Retention`:此Annotation控制...
要创建注解处理器,需要定义一个实现 javax.annotation.processing.Processor 的类,并使用 @Processor 注解进行标记。处理器会自动检测到包含目标注解的源代码并执行处理逻辑。 三、元注解 3.1 元注解定义 元注解...