Anotácia Java @Deprecated

1. Prehľad

V tomto rýchlom výučbe sa pozrieme na zastarané API v Jave a na to, ako používať API @ Zastarané anotácia.

2. The @ Zastarané Anotácia

Postupom vývoja projektu sa mení aj jeho API. Postupom času existujú určité konštruktory, polia, typy alebo metódy, ktoré už nechceme, aby ľudia používali.

Namiesto narušenia spätnej kompatibility API projektu môžeme tieto prvky označiť znakom @ Zastarané anotácia.

@ Zastarané hovorí to ostatným vývojáromthe označený prvok by už nemal byť použitý. Je bežné tiež pridať nejaký Javadoc vedľa @ Zastarané anotácia vysvetľujúca, aká by bola lepšia alternatíva slúžiaca správnemu správaniu:

verejná trieda Pracovník {/ ** * Vypočítajte obdobie medzi verziami * @deprecated * Táto metóda už nie je prijateľná na výpočet času medzi verziami. * 

Namiesto toho použite {@link Utils # CalculatePeriod (Machine)}. * * @ inštancia stroja param * @return vypočítaný čas * / @ zastaraný verejný int výpočet (stroj stroja) {return machine.exportVersions (). size () * 10; }}

Pamätajte, že kompilátor zobrazí upozornenie na zastarané API, iba ak sa niekde v kóde použije anotovaný prvok Java. V tomto prípade by sa to teda ukázalo, iba ak by existoval kód, ktorý by volal vypočítať metóda.

Tiež môžeme tiež oznámiť zastaraný stav v dokumentácii pomocou Javadocu @ zastaraný značka.

3. Voliteľné atribúty pridané v prostredí Java 9

Java 9 pridáva do doplnku niektoré voliteľné atribúty @ Zastarané anotácia: odkedy a forRemoval.

The odkedy Atribút vyžaduje reťazec, ktorý nám umožňuje určiť, v ktorej verzii bol prvok zastaraný. Predvolená hodnota je prázdny reťazec.

A forRemoval je a boolovský ktorý nám umožňuje určiť, či bude prvok odstránený v nasledujúcom vydaní. Jeho predvolená hodnota je nepravda:

verejná trieda Pracovník {/ ** * Vypočítajte obdobie medzi verziami * @deprecated * Táto metóda už nie je prijateľná na výpočet času medzi verziami. * 

Namiesto toho použite {@link Utils # CalculatePeriod (Machine)}. * * @ inštancia stroja param * @return vypočítaný čas * / @Deprecated (since = "4.5", forRemoval = true) public int spočítať (stroj stroj) {return machine.exportVersions (). size () * 10; }}

Jednoducho povedané, vyššie uvedené použitie to znamená vypočítať bola zastaraná od 4.5 našej knižnice a jej odstránenie je naplánované na ďalšie hlavné vydanie.

Odvtedy je užitočné pridať toto kompilátor nás upozorní dôraznejšie ak zistí, že používame metódu s touto hodnotou.

A už existuje podpora IDEna zisťovanie použití metódy označenej forRemoval = true. Napríklad IntelliJ prelomí kód červenou čiarou namiesto čiernej.

4. Záver

V tomto rýchlom článku sme videli, ako používať @ Zastarané anotácia a jej voliteľné atribúty na označenie kódu, ktorý by sa už nemal používať.

Celý zdrojový kód príkladov nájdete na GitHub.


$config[zx-auto] not found$config[zx-overlay] not found