Anotace (Java)

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 11. prosince 2021; kontroly vyžadují 3 úpravy .

Java anotace  je speciální forma syntaktických metadat v jazyce Java , která lze přidat do zdrojového kódu .

Anotace se používají pro analýzu kódu, kompilaci nebo provádění . Anotované balíčky, třídy, metody, proměnné a parametry.

Vypadá jako @ИмяАннотации, před definicí proměnné, parametru, metody, třídy, balíčku.

Aplikace

Anotace plní následující funkce:

Inline anotace

Anotace použité na zdrojový kód:

Poznámky použité na jiné anotace:

Příklad

public class Zvíře { public void mluvit () { } } public class Cat extends Animal { @Override // Anotace označující, že tato metoda přepíše stejnojmennou metodu nadřazené třídy public void speak () { System . ven . println ( "Mňau." ); } @Deprecated // Anotace označující, že tato metoda je zastaralá a bude brzy odstraněna public boolean soundsGood () { return true ; } }

Vytváření anotací

Deklarace anotace je podobná deklaraci rozhraní pomocí znaku @ před klíčovým slovem interface  :

@Jedlé jídlo jídlo = nové jídlo (); public @interface Edible { // vytvořte si vlastní anotaci }

Vlastní anotace mohou obsahovat různé hodnoty, které jsou popsány jako metody anotací. Každá deklarace metody definuje prvek anotace. Deklarace metody nesmí obsahovat žádné argumenty ani instrukce throws. Návratový typ musí být jeden z: primitivní typ , řetězec , třída , výčtový typ a pole obsahující datový typ uvedený výše. Metody mohou mít výchozí hodnoty.

@Edible ( true ) // přiřadí skutečnou hodnotu jedlému Food food = new Food (); public @interface Jedlé { booleovské jedlé () výchozí false ; // ve výchozím nastavení bude jedlé false } public @interface Autor { Řetězec křestní_jméno (); Řetězec příjmení (); } @Autor ( first_name = "James" , last_name = "Gosling" ) Kniha kniha = nová Kniha (); // Anotace může být také anotována, aby se definoval její rozsah @Target ({ ElementType . METHOD }) public @interface SomeAnnotation {} public class SomeClass { @SomeAnnotation private void doSomething (){} }

Historie

Původně měla platforma Java mechanismus, který předcházel anotačnímu mechanismu, jako je přechodný modifikátor nebo značka @Deprecated . V září 2002 byl JSR-175 představen Java komunitě, popisující hlavní body anotací. Byl schválen v roce 2004. Anotace jsou dostupné v samotném jazyce od verze 1.5 JDK a jsou popsány v JSR-269. Ve verzi 1.6 byly anotace integrovány do kompilátoru javac .

Odkazy