“自定义注解”的版本间的差异
跳到导航
跳到搜索
Jihongchang(讨论 | 贡献) |
Jihongchang(讨论 | 贡献) |
||
第37行: | 第37行: | ||
int age(); | int age(); | ||
+ | |||
+ | } | ||
+ | </syntaxhighlight>Test1.java<syntaxhighlight lang="java"> | ||
+ | public class Test1 { | ||
+ | |||
+ | // 使用带成员变量的 Annotation 时,需要为成员变量赋值 | ||
+ | @MyTag(name="xx", age=6) | ||
+ | public void info() { | ||
+ | |||
+ | } | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> |
2024年7月10日 (三) 05:08的版本
简单的 Annotaion
Test.java
/**
* 定义一个简单的 Annotation 类型
*/
public @interface Test {
}
定义了该 Annotation 之后,就可以在程序的任何地方使用该 Annotation, MyClass.java
// 使用 @Test 修饰类定义
@Test
public class MyClass {
}
默认情况下,Annotation 可用于修饰任何程序元素,包括类、接口、方法等, MyClass1.java
public class MyClass1 {
// 使用 @Test Annotation 修饰方法
@Test
public void info() {
}
}
复杂一点的 Annotation
MyTag.java
public @interface MyTag {
// 定义了两个成员变量的 Annotation
String name();
int age();
}
Test1.java
public class Test1 {
// 使用带成员变量的 Annotation 时,需要为成员变量赋值
@MyTag(name="xx", age=6)
public void info() {
}
}