"Inggih, pungkasanipun - pelajaran cilik liyane babagan generik."

"Saiki aku arep menehi pitutur marang kowe carane ngubengi jinis erasure."

"Ah. Kuwi ana sing pengen ngerti."

"Minangka sampeyan mbokmenawa wis ngerti, Jawa wis jinis Kelas, kang digunakake kanggo nyimpen referensi kanggo kelas obyek. "Iki sawetara conto:"

Tuladha
Class clazz = Integer.class;
Class clazz = String.class;
Class clazz = "abc".getClass();

"Ah."

"Nanging sing mbokmenawa sampeyan ora ngerti yaiku ana uga kelas umum sing diarani Kelas. Lan variabel Kelas umum mung bisa nyimpen referensi kanggo jinis sing ditemtokake dening argumen jinis.  Kene sawetara conto: "

Tuladha
Class<Integer> clazz1 = Integer.class; // Everything works well
Class<String> clazz2 = Integer.class; // Compilation error
Class<String> clazz1 = String.class; // Everything works well
Class<String> clazz2 = int.class; // Compilation error
Class<? extends String> clazz1 = "abc".getClass(); // Everything works well
Class<Object> clazz2 = "abc".getClass(); // Compilation error

"Kok bisa kaya ngono?"

"Inggih, nilai kolom kelas kanggo Integer (yaiku Integer.class) sejatine obyek Class<Integer>."

"Nanging ayo terus."

"Migunani kasunyatan sing Class<T> — minangka umum lan variabel jinis iki mung bisa ngemot nilai tipe T, sampeyan bisa nggabungake kanthi cara sing apik kaya iki:"

Tuladha
class Zoo<T>
{
 Class<T> clazz;
 ArrayList<T> animals = new ArrayList<T>

 Zoo(Class<T> clazz)
 {
  this.clazz = clazz;
 }

 public T createNewAnimal()
 {
  T animal = clazz.newInstance();
  animals.add(animal);
  return animal
 }
}
Panggunaan
Zoo<Tiger> zoo = new Zoo<Tiger>(Tiger.class); // This is where we pass the type!
Tiger tiger = zoo.createNewAnimal();

"Iki dudu maneuver sing angel banget - kita mung menehi referensi menyang jinis sing dikarepake. Nanging, yen kita mung nggunakake Kelas tinimbang Kelas<T>, mula ana wong sing ora sengaja ngliwati rong jinis: siji minangka argumen T. , lan liyane kanggo konstruktor."

"Ah. Aku ngerti. Ora ana sing gaib, nanging ora ana sing nggegirisi. Ana referensi kanggo jinis kasebut, lan sampeyan bisa nggunakake. Kerjane lan cukup kanggo aku."

"Bocah dadi wong lanang! 'Iku kerjane lan sing cukup apik kanggo kula' asring pilihan sing paling apik."

"Akeh perkara sing bisa ditindakake maneh ing Jawa saiki, nanging kita kudu njaga kompatibilitas karo kode lawas."

"Puluhan ewu perpustakaan polesan populer minangka argumen sing paling kuat kanggo Jawa saiki. Dadi, basa Jawa tetep dadi basa sing paling populer kanthi njaga kompatibilitas mundur, mula ora bisa ngenalake inovasi radikal."

"Inggih, aku arep mbangun Jawa dhewe nganggo blackjack lan ..."

"Oke, aku wis kesel saka dina. Nganti wektu sabanjuré."

"Pamit, Rishi, lan matur nuwun kanggo pelajaran sing menarik."