Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
 Jednoducho povedané , anotácia je spôsob pridávania ďalšie informácie - tiež známy ako metadáta - na programe o anotovaný položky . Táto informácia môže byť rovnako jednoduché ako poznámku podrobne autorstva , alebo niečo tak zložitého ako priradenie poľa s databázový stĺpec . Anotácia môžu byť spracované jedným z troch spôsobov : pobyt iba v pôvodnom zdrojovom kóde , kde sú zvyčajne viditeľné iba ostatným vývojárom , ktoré sú skompilované do bytecode , kde sú k dispozícii pre spracovanie runtime , ale sú k dispozícii na programy pristupujúce súbory triedy a sú zostavené tak , aby informácie načítané za behu , takže beh programu môže pristupovať 
 Prečo Vyžadovať Anotácia Podrobnosti v behu 
 
Vzhľadom k tomu , . ? autor môže uviesť ďalšie informácie o položke , ktoré majú tieto informácie k dispozícii pri behu môže dovoliť programu konať inak pre danú položku , bez toho , aby bolo nevyhnutné , aby informácie kompilovať ( alebo dokonca aj funkcie ) . Napríklad , zvažovať anotáciu , ktorá združuje polia s databázový stĺpec , možno by to vyzeralo niečo ako toto :
 @ DBField ( " Meno " ) 
 
 private String jmeno ; 
 
 V priebehu realizácie , program mohol prečítať informácie a uvedomiť si , že by mala vyplniť toto pole na základe obsahu tohto stĺpca ( udelené , bolo by to tiež potrebovať tabuľku a riadok informácií ) . To by tiež umožňuje užívateľovi písať , napríklad , generický dátový bežnej manipulácie , ktoré sa opiera o poznámky a nepotrebuje toľko špecializáciu pre každú triedu . 
 Ako Java Anotácia sú ignorované 
 
 
 ako už bolo uvedené , existujú tri spôsoby , ako pre kompilátor spracovať anotáciu , keď narazí v kóde : o zošrotovanie ho ( a tým zanecháva ju iba v kóde ) , podľa zostavovanie ho do bytecode a zostavovanie ho do bytecode s informáciami potrebnými pre jeho načítať za behu . Druhá možnosť - zostavovanie ho do bytecode ( bez zaťaženia ju za behu ) - je predvolený pre všetky anotácie, takže ak nie je uvedené inak , anotácie nie je k dispozícii pri behu . Avšak , s uvedením To je veľmi jednoduché , ak máte prístup k zdrojovému kódu anotáciu je . Jednoducho pridajte ďalšiu poznámku k definícii anotácia : 
 
 @ Retention ( RetentionPolicy.RUNTIME ) 
 
 verejné @ interface MyAnnotation ... 
 Použitie Anotácia za behu 
 
 Ak ste sa presvedčili anotácie je k dispozícii pri behu , jeho použitie je veľmi jednoduché . Za predpokladu , že máte anotácia s názvom " Autor " s hodnotou reťazca , môžete použiť nasledujúci kód , aby sa uistil , že máte runtime prístup k anotácii : 
 
 konečnej Autor author = MyClass.class.getAnnotation ( Author. trieda ) ; 
 
 System.out.println ( author.value ( ) ) ; 
 
 V tomto prípade , Moje_třída by byť vyhlásená nasledovne : 
 
 @ Autor ( " John doe " ) 
 
 public class MyClass ... 
 
 Po spustení riadky vyššie , mali by ste získať hodnotu pre anotáciu ( " John Doe " , v tomto prípade ) , vytlačené na konzole .