analysisapp.java
来自「有关java学习技巧的课件」· Java 代码 · 共 39 行
JAVA
39 行
package onlyfun.caterpillar;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
public class AnalysisApp {
public static void main(String[] args)
throws NoSuchMethodException {
Class<SomeClass3> c = SomeClass3.class;
// 因为SomeAnnotation标示于doSomething()方法上
// 所以要取得doSomething()方法的Method实例
Method method = c.getMethod("doSomething");
// 如果SomeAnnotation存在的话
if(method.isAnnotationPresent(SomeAnnotation.class)) {
System.out.println("找到 @SomeAnnotation");
// 取得SomeAnnotation
SomeAnnotation annotation =
method.getAnnotation(SomeAnnotation.class);
// 取得value成员值
System.out.println("\tvalue = " + annotation.value());
// 取得name成员值
System.out.println("\tname = " + annotation.name());
}
else {
System.out.println("找不到 @SomeAnnotation");
}
// 取得doSomething()方法上所有的Annotation
Annotation[] annotations = method.getAnnotations();
// 显示Annotation名称
for(Annotation annotation : annotations) {
System.out.println("Annotation名称:" +
annotation.annotationType().getName());
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?