I-type ang Mga Anotasyon sa Java

I-type ang Mga Anotasyon sa Java

Sa pagpapakilala ng Java 8, ang bersyon ay nagpakilala ng dalawang bagong tampok na tinatawag na paulit-ulit na mga anotasyon at uri ng mga anotasyon. Hanggang sa oras na ito, kung gusto mong gumamit ng mga anotasyon sa Java, magagawa mo lang ito sa mga deklarasyon. Sa Java 8, maaari ka na ngayong magdagdag ng mga anotasyon sa anumang uri ng paggamit. Saanman ka gumagamit ng isang uri (kasama ang mga uri sa mga deklarasyon, generic, at mga cast), maaari mong samahan iyon ng isang anotasyon.

I-type ang Syntax ng Anotasyon

Ang Java 8 ay maaaring magdeklara ng mga uri ng anotasyon sa anumang uri ng paggamit. Ang isang halimbawa ay ang snippet sa ibaba:

@Encrypted String data; Ilista ang <@NonNull String> na mga string; myGraph = ( @Immutable Graph ) tmpGraph; Maaari ka lang magpakilala ng bagong uri ng anotasyon. Ang proseso ay katulad ng pagtukoy sa isang anotasyon gamit ang ElementType.TYPE_PARAMETER target, ElementType.TYPE_USE target, o parehong target: @Target ( { ElementType.TYPE_PARAMETER, ElementType.TYPE_USE } ) pampublikong @interface Naka-encrypt { }

Ang ElementType.TYPE_PARAMETER target ay nagpapahiwatig na maaari mong isulat ang anotasyon sa deklarasyon ng isang uri ng variable (hal. class MyClass {….}). Ang Element.Type.TYPE_USE ay nagpapahiwatig na maaari mong isulat ang anotasyon sa anumang uri ng paggamit (lalo na ang mga uri sa mga deklarasyon, generic, at mga cast).

Maaari mong i-save ang mga anotasyon sa mga file ng klase, ngunit hindi ito nakakaapekto o nakakaimpluwensya sa pagpapatupad ng programa. Bilang halimbawa, maaari kang magdeklara ng dalawang variable ng File at isang koneksyon tulad ng ipinapakita sa code sa ibaba:

File file = ….; @Encryted File encryptedFile = …; @Open Connection connection = …; Habang isinasagawa mo ang programa, magiging pareho ang resulta kung ipapasa mo ang alinman sa dalawang file sa paraan ng send() ng koneksyon. connection.send(file); connection.send(encryptedFile);

 

Ilang Halimbawa ng Uri ng Anotasyon

@nonNull List Listahan <@NonNull String> str Arrays <@NonNegative Integer> sort @Encypted File file @Open Connection connection void divideInteger (int a, int b) throws @ZeroDivisior ArithmeticException

 

Mag-iwan ng komento

Ang site na ito ay gumagamit ng Akismet upang mabawasan ang spam. Alamin kung paano naproseso ang data ng iyong komento.