java注解實(shí)踐-java開發(fā)java經(jīng)驗(yàn)技巧

java注解實(shí)踐-java開發(fā)java經(jīng)驗(yàn)技巧

ID:30778121

大?。?54.83 KB

頁數(shù):17頁

時(shí)間:2019-01-03

java注解實(shí)踐-java開發(fā)java經(jīng)驗(yàn)技巧_第1頁
java注解實(shí)踐-java開發(fā)java經(jīng)驗(yàn)技巧_第2頁
java注解實(shí)踐-java開發(fā)java經(jīng)驗(yàn)技巧_第3頁
java注解實(shí)踐-java開發(fā)java經(jīng)驗(yàn)技巧_第4頁
java注解實(shí)踐-java開發(fā)java經(jīng)驗(yàn)技巧_第5頁
資源描述:

《java注解實(shí)踐-java開發(fā)java經(jīng)驗(yàn)技巧》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、Java注解實(shí)踐-Java開發(fā)Java經(jīng)驗(yàn)技巧Java注解實(shí)踐原文出處:翡青注解對(duì)代碼的語意沒冇直接影響,他們只負(fù)責(zé)提供信息給相關(guān)的程序使用.?注解永遠(yuǎn)不會(huì)改變被注解代碼的含義,但可以通過工具對(duì)被注解的代碼進(jìn)行特殊處理.JDK基本Annotation注解?Override?Deprecated?SuppressWarnings(value二〃unchecked")@SafeVarargs?Functionallntcrfacc?value特權(quán)如果使用注解吋只需耍為value成員變量指定值,則使用注解時(shí)可以直接在該注解的括號(hào)中指定value值,而無需使用n

2、ame二value的形式.如@SuppressWarnings("unchecked")(SuppressWarnings的各種參數(shù)請(qǐng)參考解析@SupprcssWamings的各種參數(shù))?詰堅(jiān)持使用Override注解:如果在每個(gè)方法中使用Override注解來聲明要覆蓋父類聲明,編譯器就可以替你防止大量的錯(cuò)誤.JDK元Annotation元Annotation用于修飾It他的Annotation定義.元注解?Retention注角@Target注倂@Documcnted注詢?Inherited注僑?Retention?注解的保翩策略?Documente

3、d?Retention(RetentionPolicy.RUNTIME)@Target(ElementType.ANNOTATTON_TYPE)public@interfaceRetention{RetentionPolicyvalue();}value為SOURCE,?CLASS,?RUNTIME三值之一:publicenumRetentionPolicy{/***Annotationsaretobediscardedbythecompiler.*/SOURCE,/***Annotationsaretoberecordedintheclassfileb

4、ythecompiler*butneednotberetainedbytheVMatruntime.Thisisthedefault*behavior.*/CLASS,/***Annotationsaretoberecordedintheclassfilebythecompilerand*retainedbytheVMatruntime,sotheymaybereadreflcctively.**?seejava.lang,reflect.AnnotatedElement*/RUNTIME}??Target?指定Annotation可以放宜的位置(被修飾

5、的目標(biāo))?Documented?Retention(RetentionPolicy.RUNTIME)@Target(ElementType.ANNOTATTON_TYPE)public@intcrfaccTarget{ElementType[]value();publicenumElementType{/**Class,interface(includingannotationtype),orenumdeclaration*/TYPE,/**Fielddeclaration(includesenumconstants)*/FIELD,/**Methodd

6、eclaration*/METHOD,/**Parameterdeclaration*/PARAMETER,/**Constructordeclaration*/CONSTRUCTOR,/**Localvariabledeclaration*/LOCAL_VARTABLE,/**Annotationtypedeclaration*/ANNOTATION_TYPE,/**Packagedeclaration*/PACKAGE??Documented?指定被修飾的該Annotation可以被javadocI具提取成文檔.??Inherited?指定被修飾的A

7、nnotation將具有繼承性如果某個(gè)類使^@Xxx注解(該Annotation使用了?Inherited修飾)修飾,則其子類口動(dòng)被@乂乂滅注解修飾.Annotation/***Createdbyjifangon15/12/22.*/@Tnherited@Target({ElementType.ANNOTATION_TYPE,ElementType.TYPE})?Retention(RetentionPolicy.RUNTIME)public?interfaceTestable{}ClientpublicclassClient{@Testpublicvo

8、idclicnt(){newSubClass();?TestableclassS

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。