java注解到底有什么用 java注解可以繼承注解嗎?
java注解可以繼承注解嗎?一般來(lái)說(shuō)java的注解是不可以繼承的。意思就是java的注解,在子類(lèi)里面是拿不到的。但是客戶以通過(guò)給注解添加@Inherited注解來(lái)實(shí)現(xiàn)繼承??墒?。??纯磀emo:Ani
java注解可以繼承注解嗎?
一般來(lái)說(shuō)java的注解是不可以繼承的。意思就是java的注解,在子類(lèi)里面是拿不到的。但是客戶以通過(guò)給注解添加@Inherited注解來(lái)實(shí)現(xiàn)繼承。可是。??纯磀emo:Ani注解標(biāo)記了@Inherited,是一個(gè)可以繼承的注解。packagetestannotation/***描述:**@author:DASHU*@since:14-1-16.*/@Ani("sup")@AniNoi("supnoi")publicclassSupClass{@Ani("supa")publicStringa@AniNoi("supb")publicStringb@Ani("supc")publicvoidc(){}@AniNoi("supd")publicvoidd(){}}
Java中的注解到底是如何工作的?
注解是用來(lái)描述Java類(lèi)的,可以自定義注解,然后通過(guò)反射獲取注解執(zhí)行指定的動(dòng)作。
舉個(gè)簡(jiǎn)單的例子
這樣就可以通過(guò)反射來(lái)獲取到一些元信息了,相當(dāng)于配置和業(yè)務(wù)邏輯實(shí)現(xiàn)了分離。
當(dāng)然這個(gè)自定義注解還需要依賴一些特定的注解,我們稱為元注解。一共有5種:
@Retention:存活的周期
RetentionPolicy.SOURCE
保留在源碼階段RetentionPolicy.CLASS
編譯RetentionPolicy,RUNTIME 運(yùn)行階段
@Documented 將注解中的元素包含到JavaDoc中
@Target 注解可以用到的地方 有類(lèi)、方法、屬性等
@Inherited 繼承
@Repeatable 可重復(fù)
為啥國(guó)內(nèi)程序員寫(xiě)的代碼也用英文注釋?zhuān)?/h2>
1.英語(yǔ)注釋表達(dá)含義比較確切
2.不存在亂碼問(wèn)題
3.不需要來(lái)回切換輸入法
4.國(guó)際化需求