課程
/后端開發(fā)
/Java
/Java入門第二季 升級版
視頻中說如果左面的對象包含右面的類的元素就返回True,這句話不是很理解啊,有沒有人能說清楚一點(diǎn)
2017-10-08
源自:Java入門第二季 升級版 10-2
正在回答
左邊的引用是否 是右邊的類型 或者說是 子類
instanceof是 判斷 左側(cè)對象是不是右側(cè)類的實(shí)例
引用原文地址:http://blog.csdn.net/cntanghai/article/details/6096976
package?myPackage;???? /**?? *?instanceof運(yùn)算符用法?? *?運(yùn)算符是雙目運(yùn)算符,左面的操作元是一個對象,右面是一個類.當(dāng)?? *?左面的對象是右面的類創(chuàng)建的對象時,該運(yùn)算符運(yùn)算的結(jié)果是true,否則是false?? *??? *?說明:(1)一個類的實(shí)例包括本身的實(shí)例,以及所有直接或間接子類的實(shí)例?? *?(2)instanceof左邊操作元顯式聲明的類型與右邊操作元必須是同種類或右邊是左邊父類的繼承關(guān)系,?? *?(3)不同的繼承關(guān)系下,編譯出錯?? */???? class?Person?{???? }???? class?Student?extends?Person?{???? }???? class?Postgraduate?extends?Student?{???? }???? class?Animal?{???? }???? public?class?Ex_instanceOf?{???? public?static?void?main(String[]?args)?{???? ???instanceofTest(new?Student());???? }???? /**?? *?這個程序的輸出結(jié)果是:p是類Student的實(shí)例?? *??? *?Person類所在的繼承樹是:Object<--Person<--Student<--Postgraduate。?? *??? *?這個例子中還加入一個Animal類,它不是在Person類的繼承樹中,所以不能作為instanceof的右操作數(shù)。?? *??? *?@param?p?? */???? public?static?void?instanceofTest(Person?p)?{???? ???//?p?和?Animal類型不一樣,彼此之間沒有繼承關(guān)系,編譯會出錯???? ???//?提示錯誤:Incompatible?conditional?operand?types?Person?and?Animal???? ???//?if(p?instanceof?Animal){???? ???//?System.out.println("p是類Animal的實(shí)例");???? ???//?}???? ???//下面代碼的除了第一行都會輸出???? ???if?(p?instanceof?Postgraduate)?System.out.println("p是類Postgraduate的實(shí)例");???? ???if?(p?instanceof?Person)?System.out.println("p是類Person的實(shí)例");???? ???if?(p?instanceof?Student)?System.out.println("p是類Student的實(shí)例");???? ???if?(p?instanceof?Object)?System.out.println("p是類Object的實(shí)例");???? ??? }???? }
舉報
課程升級!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會Java面向?qū)ο缶幊痰膴W妙
4 回答關(guān)于instanceof的一個疑問
2 回答判斷兩個對象類型是否相同?用 obj instanceof Dog 可以么?
2 回答從鍵盤輸入的多個字符串來判斷字符串是否符合條件
3 回答instanceof格式
4 回答instanceof用法
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2018-02-27
左邊的引用是否 是右邊的類型 或者說是 子類
2017-11-07
instanceof是 判斷 左側(cè)對象是不是右側(cè)類的實(shí)例
2017-10-08
引用原文地址:http://blog.csdn.net/cntanghai/article/details/6096976