Birinji bölüm. SOURCE we CLASS görnüşleri bilen düşündirişler hakda gaty gysga ýazdym. Ikinji bölümde ýitirim bolmazlyk we biraz "düşünişmezlige" başlamazlyk üçin okamaga mynasyp =) Bu ýerde hökman bilýän iň azyndan bir söz bolar!
Bu ýerde kynçylyklary ilkinji gezek görenimde, nämüçindir duýmadym. Garaz, “Override” asylýar, IDEA tarapyndan ýazyldy, şeýle bolmaly. Wagtyň geçmegi bilen hemme zadyň has çuňdugyna düşündim. Okaýan wagtyňyz, düşündirişler peýdasyz, ýöne zerur bir zat ýaly bolup görünýär. Näme üçin beýle edýändiklerini bilmeýärsiň. Birnäçe makalany okadym öýdýärin, olar "indi düşündirişlerimiziň bolmagy gaty gowy zat, hemme zat ýönekeý boldy" diýdiler. Itöne ozal nähili bolandygyny bilmedim, indi has aňsatdygyna düşünmedim. Indi bilýärin we size biraz aýdasym gelýär. Annotasiýalaryň 3 görnüşi bar (RetentionPolicy):
Ativeerli - hiç haçan görmedim we ulanmadym. Meniň pikirimçe, bu gaty seýrek düşündiriş, sebäbi ... başga bir “ene” dilinde kod işlemeli bolsa ulanýarlar. Men oňa anyk salgylanma tapjak boldum, ýöne edip bilmedim.
SuppressWarnings - köplenç @ SuppressWarnings ("barlanmadyk") görnüşinde ulanylýar. Bilýän duýduryşlaryňyzy basmak üçin ulanylýar. Aboveokardaky mysal, gözegçilik edilmedik görnüşleri guýmak baradaky duýduryşlary basýar. Againene-de diňe şu görnüşde we ulanyşda duş geldim.
Döredilen - wezipe menden xsd faýllaryndan sapak döretmegi talap edeninde indi tapdym. Bu 3 düşündiriş gaty anyk we häzirki wagtda sizi gyzyklandyrmaýar. Iň soňkusyny suratlandyraryn.
Override - ony hemişe ulanýarsyňyz we gaty peýdaly bir zat edýär. IDEA etmese, bir usuly ýok edende ýalňyşlyk goýmak aňsat. Typazgylar ýa-da diňe ýalňyşlyklar bar. Bu düşündiriş, ene synpdaky usulyň biziň (bellikli) usulymyz bilen birmeňzeş bolmagyny üpjün eder. Bu, usulyň ýok ediljekdigini we goşulmajakdygyny kepillendirýär. Kod täzeden işledilende usul aýrylyp ýa-da üýtgedilip bilner. Againene-de düşündiriş size ýalňyşlygy görkezer. Bu bolmasa, usulymyz diňe tamamlanardy.
Içgysgynçmy? Hawa diýerdim, bu makaladan aýyrmagyň kän peýdasy ýok. Ondaky hemme zat diýen ýaly (90%) ulanmajak, ýa-da ulanmajak, ýöne gaty seýrek bir zat hakda hekaýa. Galan 10% -i salam we ilkinji seredişde peýdasyz bolan "Override" düşündirişiniň beýany. Garaz, makalanyň ikinji bölümi has gyzykly bolar diýip pikir edýärin. RUNTIME düşündirişleri bolar we olar hakyky wagtda kod bilen täsirleşip, gara jady döredýärler. Annotasiýa. Ikinji bölüm. Lombok.
- GÖRNÜŞ - düzüjiniň düşündirişleri
- KLASS - düşündirişden maglumatlar bytekoda ýazylar, ýöne iş wagtynda elýeterli bolmaz. Adaty kitaphanadaky köp düşündirişiň bu görnüşi ulanýandygyny ýazýarlar, indi bolsa yza gabat gelýänligi sebäpli saklaýarlar. Örän anyk meseleler üçin ulanylýar.
- StackOverflow-da sorag we jogap
- RUNTIME - kod işleýän wagtynda ulanylýan iň meşhur.
- java / lang / annotation / Native.class;
- java / lang / SuppressWarnings.class
- javax / annotation / Generated.class
- , java / lang / Override.class
- com / gün / istack / içerki / Nullable.class
- com / sun / istack / içerki / NotNull.class
- com / gün / istack / içerki / Interned.class
- Ativeerli - bu düşündirişiň aşagyndaky üýtgeýän, ýerli koda salgylanyp biler;
- SuppressWarnings - dürli düzüjiniň duýduryşlaryny basýar;
- Döredilen - döredilen deslapky kody belleýär;
- Artykmaç - usuly ýokaşdyrmak üçin barlaglar.
GO TO FULL VERSION