Java 注解 - 实践
2025-09-20 08:52 tlnshuju 阅读(8) 评论(0) 收藏 举报Java 注解
注解让其他程序根据注解信息来决定如何执行该程序
声明使用注解
声明注解
public @interface t {
String aaa();
int bbb();
}
使用
@t(aaa="ttt",bbb = 1)
public class Student {
@t(aaa="qqq",bbb=2)
public void test(){
}
}
如果只有一个value属性可以简写为
public @interface t {
String value();
}
@t("ttt")
public class Student {
}
元注解
修饰注解的注解

//声明注解的保留周期
@Retention(RetentionPolicy.RUNTIME)
//注明注解可以用在哪些地方
@Target(ElementType.ANNOTATION_TYPE)
public @interface zj {
}
注解的解析
要解析谁上面的注解,就应该先拿到谁
比如要解析类上的注解,就要先获得类的Class对象
要解析方法的注解,就要先获得方法的Method对象
@zj(value = "装载机",aaa = 99,bbb = {"这种","那种"})
public class Student {
@zj(value = "悟空",aaa = 77,bbb = {"这边","那边"})
public void test(){}
}
public class DemoApplication {
public static void main(String[] args) throws Exception {
//1.获得class对象
Class aClass = Student.class;
//2.解析
//判断类上是否包含某个注解
if(aClass.isAnnotationPresent(zj.class)){
//获得注解
zj declaredAnnotation = (zj) aClass.getDeclaredAnnotation(zj.class);
//获得注解的值
String value = declaredAnnotation.value();
double aaa = declaredAnnotation.aaa();
String[] bbb = declaredAnnotation.bbb();
System.out.println(value);
System.out.println(aaa);
System.out.println(Arrays.toString(bbb));
}
}
}
浙公网安备 33010602011771号