"Halo, Amigo!"

"Hallo, Riska."

"Dina iki aku bakal menehi sampeyan introduksi sing luwih jero babagan anotasi."

"Minangka sampeyan wis ngerti, anotasi minangka tembung khusus sing bisa dilebokake ing jejere kelas, lapangan, metode, lan variabel."

"Ya. Aku kerep ketemu wong-wong mau."

"Kadhangkala uga diarani metadata . Tujuan utamane yaiku kanggo nyimpen informasi tambahan khusus babagan metode, lapangan, lan kelas."

"Sapa padha nyimpen?"

"Iku pitakonan sing apik banget."

"Wong nulis anotasi, tegese ana sing butuh."

"Anotasi ngidini sampeyan nyimpen informasi tambahan babagan kode lan unsur program, nanging, kanthi resmi, dudu bagean saka kode kasebut."

"Anotasi bisa digunakake kanggo ngasilake XML, nemtokake manawa metode ora digunakake, nglacak kewan omo, lsp."

"Iki conto anotasi ing kode:"

Tuladha
@CatInfo(manager=Catmanager.class, unique=true)
class Cat
{
 @Name("Missy")
 private String name;

 @SuppressWarnings(value = "unchecked")
 void getUniqueCatName()
 {

 }
}

"Minangka sampeyan bisa ndeleng, data bisa disimpen ing anotasi."

"Yen anotasi mung nduweni siji kolom sing diarani nilai , banjur jeneng kolom bisa diilangi:"

Tuladha
@SuppressWarnings("unchecked")
void getUniqueCatName()
{

}

"Yen ora ana paramèter ing jero kurung, mula bisa uga diilangi:"

Tuladha
@Override
void getUniqueCatName()
{

}

"Pancen gampang banget kanggo nggawe anotasi dhewe. Nyatakake anotasi meh padha karo ngumumake antarmuka."

Tuladha
@interface CatManager
{
 Class manager();
 boolean unique();
 String name() default "Unknown Cat";
}

"Ana mung sawetara beda."

"Kaping pisanan, sampeyan sijine tandha «@» sadurunge antarmuka tembung ."

"Kapindho, anotasi bisa duwe nilai standar. Sampeyan nggunakake tembung standar kanggo nyetel nilai standar . Deleng conto ing ndhuwur. Parameter iki opsional lan bisa diilangi nalika nambahake anotasi."

"Ah. Iku kabeh luwih gampang saka aku panginten. Lan aku wis nyingkiri wong-wong mau kaya Robo-Sétan ngindari banyu suci. Iku ora penake banget nalika kode wis akèh iku sampeyan ora tanggung ngerti."

"Oh, apik yen sampeyan ngelingake aku - aku pengin ngandhani luwih akeh babagan anotasi sing digunakake dening compiler."

"Ana mung 3 anotasi kuwi. Lha, telu nganti saiki."

@Ditinggalake.

"Sampeyan bisa menehi annotate kelas utawa metode karo @Deprecated. Iki bakal nyebabake kompiler ngetokake bebaya (peringatan dudu kesalahan), lan IntelliJ IDEA bakal nampilake metode iki minangka teks strikethrough. Kaya iki  :

Tuladha
Date date = new Date();
int year = date.getYear();

@Nganti.

"Iku dianggep minangka praktik paling apik kanggo nambah anotasi @Override menyang metode sing sampeyan timpa."

"Iki kanggo apa? Apa IDEA wis nuduhake yen metode ditimpa utawa ora?"

"Kaping pisanan, ana IDEA lan banjur ana sintaksis Jawa."

"Lan kaloro, kanthi hipotesis, sampeyan bisa duwe kahanan ing ngendi metode kelas dhasar diganti jeneng tanpa owah-owahan sing cocog karo jeneng metode ing subkelas. Program kasebut ora bisa kaya sing dikarepake, nanging ora ana sing bakal weruh. Anotasi iki diciptakake kanggo nyegah kahanan iki kedadeyan:"

Tuladha
@Override
void getUniqueCatName()
{

}

@SuppressWarnings.

"Kadhangkala kompiler nampilake akeh bebaya. Lan kadhangkala kita ngerti babagan «masalah» lan kanthi sengaja milih nggunakake kode sing cocog sing nggawe. Sampeyan bisa nggunakake anotasi iki kanggo ndhelikake sawetara bebaya kasebut."

"A programmer bisa nggunakake @SuppressWarnings anotasi kanggo ngandhani compiler, "Aja nuduhake bebaya kanggo kesalahan iki - iku sengaja." Tuladhane:"

Tuladha
@SuppressWarnings("unchecked")
void getUniqueCatName()
{

}

"Ngerti."

"Aku wis rada kesel. Aku arep teles tenggorokanku sing garing. Ayo diterusake sawise istirahat, Oke?"

"Inggih."