@Target注解 Java中的注解到底是如何工作的?
Java中的注解到底是如何工作的?注釋用于描述Java類。您可以自定義注釋,然后通過(guò)反射獲取注釋以執(zhí)行指定的操作。舉個(gè)簡(jiǎn)單的例子這樣可以通過(guò)反射獲得一些元信息,相當(dāng)于配置和業(yè)務(wù)邏輯的分離。當(dāng)然,這個(gè)自
Java中的注解到底是如何工作的?
注釋用于描述Java類。您可以自定義注釋,然后通過(guò)反射獲取注釋以執(zhí)行指定的操作。
舉個(gè)簡(jiǎn)單的例子
這樣可以通過(guò)反射獲得一些元信息,相當(dāng)于配置和業(yè)務(wù)邏輯的分離。
當(dāng)然,這個(gè)自定義注釋還取決于一些特定的注釋,我們稱之為元注釋。一共有五種:
@保留:生存周期保留策略.SOURCE
保持在源階段保留策略.CLASS
Compile
retention policy,runtime
@documented將注釋中的元素包含到Javadoc中
@target注釋可用于類、方法、屬性、,etc.]@inherited
@repeatable一般來(lái)說(shuō),Java注解不能被繼承。這意味著Java注釋在子類中不可用。但是,客戶機(jī)通過(guò)向注釋中添加@inherited annotation來(lái)實(shí)現(xiàn)繼承。但是。??纯囱菔荆篈NI注釋被標(biāo)記為@inherited,這是一個(gè)繼承的注釋。包注釋/**說(shuō)明:*@作者:大樹*@ 自:14-1-16。*/@Ani(“sup”)@AniNoi(“supnoi”)publicclassSupClass{@Ani(“supa”)publicStringa@AniNoi公司(“supb”)公共字符串B@Ani(“supc”)publicvoidc(){}@AniNoi(“supd”)publicvoidd(){}}
java注解可以繼承注解嗎?
Inherited:表示自動(dòng)繼承批注類型
retention:批注類型的批注應(yīng)該保留多長(zhǎng)時(shí)間retained
target:表示適用于注釋類型的程序元素的類型
這些元素可以在API中找到。你需要學(xué)會(huì)自己閱讀API文檔。如果不學(xué)習(xí)閱讀文檔,你怎么做編程呢