.编写一个注解。并添加元注解,让该注解可以用在方法上,类上,和属性上
生活随笔
收集整理的這篇文章主要介紹了
.编写一个注解。并添加元注解,让该注解可以用在方法上,类上,和属性上
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
/*** @author silence* <p>* test標注的會被調用*/
public class DemoA {public void method1() {System.out.println("DemoA method1方法被調用");}@Testpublic void method2() {System.out.println("DemoA method2方法被調用");}@Testpublic void method3() {System.out.println("DemoA method3方法被調用");}
}
import java.lang.reflect.Constructor;
import java.lang.reflect.Method;/*** @author silence* 運行主方法*/
public class DemoB {public static void main(String[] args) throws Exception {//獲得字節碼文件對象Class<DemoA> clazz = DemoA.class;//通過字節碼引用獲得單個無參構造Constructor<DemoA> constructor = clazz.getConstructor();// 通過無參構造引用創建對象 因為是無參,所以這里也不用傳實參//可以通過這個引用直接調用方法DemoA demoA = constructor.newInstance();//首先獲取有參和無參的所有方法,Method[] methods = clazz.getDeclaredMethods();//遍歷數組for (Method method : methods) {//判斷方法是否添加了注解 這里傳入字節class文件if (method.isAnnotationPresent(Test.class)) {//如果添加了注解,則調傭該方法//這里需要傳入對象引用, 如果有參數需要傳入實參method.invoke(demoA);}}}
}
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;/*** @author silence* 自定義注解*/
@Retention(value = RetentionPolicy.RUNTIME)
public @interface Test {
}
總結
以上是生活随笔為你收集整理的.编写一个注解。并添加元注解,让该注解可以用在方法上,类上,和属性上的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 台风“暹芭”登陆广东电白 实拍龙卷风:板
- 下一篇: ios 自定义拍照页面_vivo X27