"Hello, Amigo! Nakilala mo na ang instanceof operator. Ngayon sasabihin ko sa iyo kung paano at saan ito magagamit. instanceof is a very simple and efficient operator."
"Parang ad yan!"
"Ito ay talagang napakasimple. Ito ay ginamit tulad nito: «object» instanceof «class» ."
Sinusuri nito kung ang isang bagay ay isang halimbawa ng isang partikular na klase. Ito ay mas madali kaysa ipaliwanag ito. Tingnan ang halimbawang ito:
Code | Paglalarawan |
---|---|
|
magiging totoo ang isInt . Ang object na isinangguni ng variable o ay isang instance ng Integer class. |
|
ang isInt ay magiging false . Ang bagay na isinangguni ng variable o ay hindi isang instance ng klase ng Integer . Ito ay isang String object. |
|
ang isFIS ay magiging totoo . Ang object na isinangguni ng variable o ay isang instance ng klase ng FileInputStream . |
"Oo, napakasimple niyan."
"Ang operator na ito ay nag-account din para sa mana. Tingnan ito."
Code | Paglalarawan |
---|---|
|
Narito mayroon kaming tatlong deklarasyon ng klase: Hayop, Pusa, at Tigre. Nagmana ng Hayop ang pusa. At ang Tigre ay namamana ng Pusa. |
|
ang isCat ay magiging totoo . Magiging totoo ang isTiger . isAnimal ay magiging totoo . |
|
ang isCat ay magiging huwad . Ang isTiger ay magiging huwad . isAnimal ay magiging totoo . |
At kahit na mga interface:
Code | Paglalarawan |
---|---|
|
Lumikha ng dalawang klase: Cat, TomCat at ang Moveable interface |
|
ang isCat ay magiging totoo . isMoveable ay magiging totoo . isTom ay magiging totoo . |
|
ang isCat ay magiging totoo . isMoveable ay magiging false . isTom ay magiging huwad . |
Ang instanceof operator ay ganito ang hitsura: a instanceof B .
Sa madaling salita, babalik ng true ang instanceof operator kung:
1) ang variable a ay nag-iimbak ng isang sanggunian sa isang bagay ng uri B
2) ang variable a ay nag-iimbak ng isang sanggunian sa isang bagay na ang klase ay nagmamana ng B
3) ang variable a ay nag-iimbak ng isang sanggunian sa isang bagay na nagpapatupad ng interface B
Kung hindi, ang instanceof operator ay magbabalik ng false .
"Got it. So bakit kailangan ito, Uncle Rishi?"
"Sasabihin sa iyo ni Ellie ang tungkol diyan ngayon. This is a really nice operator. You'll be convinced of that today."
GO TO FULL VERSION