java注解怎么傳入變量 Java中的注解到底是如何工作的?
Java中的注解到底是如何工作的?注釋用于描述Java類。您可以自定義注釋,然后通過反射獲取注釋以執行指定的操作。舉個簡單的例子這樣可以通過反射獲得一些元信息,相當于配置和業務邏輯的分離。當然,這個自
Java中的注解到底是如何工作的?
注釋用于描述Java類。您可以自定義注釋,然后通過反射獲取注釋以執行指定的操作。
舉個簡單的例子
這樣可以通過反射獲得一些元信息,相當于配置和業務邏輯的分離。
當然,這個自定義注釋還取決于一些特定的注釋,我們稱之為元注釋。一共有五種:
@保留:生存周期保留策略.SOURCE
保持在源階段保留策略.CLASS
Compile
retention policy,runtime
@documented將注釋中的元素包含到Javadoc中
@target注釋可用于類、方法、屬性、,等等]@繼承的
@可重復的可重復的
我知道1。首先獲取這個類的classClass> objclass=t.getclass()2。獲取位于的此類字段[]的字段屬性objclass.getDeclaredFields() 3. 遍歷(field FD:at){//的所有字段例如,如果(fd.I注釋存在( NotNull.class類)){//通過這種方式,獲得注釋屬性notnull D=fd.getAnnotation注釋( NotNull.class類)}} 4. 要獲取注釋,首先需要獲取其字段。希望對你有幫助
!~]//定義注解并將Java注解保留策略指定為運行時,在運行時將其注入Java字節碼文件//只有這樣才能在運行時進行反射和獲取。@ java.lang.annotation注釋.保留(java.lang.annotation注釋. 保留策略.RUNTIME)@接口myannotation{tstring key()default “”-tint value()default 0}//使用annotation@myannotation(key=“key1”,value=200)class MyClass{}//reflect annotation public static void main(string[]args){MyClass MyClass=new MyClass()myannotation annotation=myClass.getClass類().getAnnotation(MyAnnotation.class類) 系統輸出打印(“鍵=”注釋.key()“t值=”注釋.值())}