JavaRush /Java blogi /Random-UZ /instanceof operatori
articles
Daraja

instanceof operatori

Guruhda nashr etilgan
Operatordan foydalanib instanceof, ob'ekt qaysi sinfdan kelganligini bilib olishingiz mumkin. Bu operator ikkita argumentga ega. Chap tomonda ob'ektga havola, o'ngda esa moslik tekshirilayotgan ob'ektning turi nomi. Masalan: instanceof operatori - 1
Parent р = new Child(); // проверяем переменную р типа Parent
//на совместимость с типом Child print(p instanceof Child);
Natija haqiqat bo'ladi . Shunday qilib, operator instanceofmurojaat turiga emas, balki u murojaat qilayotgan ob'ektning xususiyatlariga tayanadi. Ammo bu operator faqat ob'ekt olingan tur uchun emas, balki haqiqiy qiymatni qaytaradi. Keling, allaqachon e'lon qilingan sinflarga yana bittasini qo'shamiz:
// Объявляем новый класс и наследуем
// его от класса Child
class ChildOfChild extends Child {}
Endi yangi turdagi o'zgaruvchini yaratamiz:
Parent p = new ChildOfChild();
print(p instanceof Child);
ParentBirinchi satr dan olingan ob'ektga havola bilan ishga tushiriladigan turdagi o'zgaruvchini e'lon qiladi ChildOfChild. Ikkinchi qatorda bayonnoma instanceoftur moslamasining Parentsinf bilan mosligini tahlil qiladi Childva jalb qilingan ob'ekt na birinchi, na ikkinchi sinfdan olinmaydi. Biroq, operator true ni qaytaradi , chunki bu ob'ekt olingan sinf dan meros bo'ladi Child. Asl manbaga havola: Operator instanceof
Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION