"Halo, Amigo! Sampeyan wis ketemu operator instanceof . Dina iki aku arep ngomong carane lan ngendi iku bisa digunakake. instanceof iku operator banget prasaja lan efisien."

"Iki kaya iklan!"

"Pancen prasaja banget. Iki digunakake kaya iki: «obyek» instanceof «kelas» ."

Priksa manawa obyek minangka conto saka kelas tartamtu. Iku luwih gampang tinimbang nerangake. Deleng conto iki:

Kode Katrangan
Object o = new Integer(3);
boolean isInt = o instanceof Integer;
isInt bakal bener . Obyek sing dirujuk dening variabel o minangka conto saka kelas Integer .
Object o = "Mama";
boolean isInt = o instanceof Integer;
isInt bakal palsu . Obyek sing dirujuk dening variabel o dudu conto saka kelas Integer . Iku obyek String .
InputStream is = new FileInputStream("");
boolean isFIS = is instanceof FileInputStream;
isFIS bakal bener . Objek sing dirujuk dening variabel o minangka conto saka kelas FileInputStream .

"Ya, iku prasaja banget."

"Operator iki uga nyathet warisan. Priksa."

Kode Katrangan
class Animal
{
}
class Cat extends Animal
{
}
class Tiger extends Cat
{
}
Ing kene kita duwe telung deklarasi kelas: Kewan, Kucing, lan Macan. Kucing marisi Kewan. Lan Macan marisi Kucing.
Object o = new Tiger();
boolean isCat = o instanceof Cat;
boolean isTiger = o instanceof Tiger;
boolean isAnimal = o instanceof Animal;
isCat  bakal  bener .
isTiger  bakal  bener .
isAnimal  bakal  bener .
Object o = new Animal();
boolean isCat = o instanceof Cat;
boolean isTiger = o instanceof Tiger;
boolean isAnimal = o instanceof Animal;
isCat  bakal palsu .
isTiger  bakal  palsu .
isAnimal  bakal  bener .

Lan malah antarmuka:

Kode Katrangan
interface Moveable
{
}
class Cat
{
}
class TomCat extends Cat implements Moveable
{
}
Nggawe rong kelas: Cat, TomCat lan antarmuka Moveable
Cat o = new TomCat();
boolean isCat = o instanceof Cat;
boolean isMoveable = o instanceof Moveable;
boolean isTom = o instanceof TomCat;
isCat  bakal  bener .
isMoveable  bakal  bener .
isTom  bakal  bener .
Cat o = new Cat();
boolean isCat = o instanceof Cat;
boolean isMoveable = o instanceof Moveable;
boolean isTom = o instanceof TomCat;
isCat  bakal  bener .
isMoveable  bakal  palsu .
isTom  bakal  palsu .

Operator instanceof katon kaya iki: a instanceof B .

Ing tembung liyane, operator instanceof bakal bali bener yen:

1) variabel a nyimpen referensi kanggo obyek saka tipe B

2)  variabel a nyimpen referensi kanggo obyek sing kelas warisan  B

3)  variabel a nyimpen referensi menyang obyek sing ngetrapake antarmuka  B

Yen ora, operator instanceof bakal ngasilake false .

"Wis ta. Lha iki kok perlu, Pakdhe Rishi?"

"Ellie arep nyritakake babagan iki dina iki. Iki operator sing apik banget. Sampeyan bakal yakin yen dina iki."