重寫equal中的obj強(qiáng)轉(zhuǎn)為Course問題
????if?(!(obj?instanceof?Course))????????????? ????return?false;???????? ????Course?course?=?(Course)?obj; ????為什么已經(jīng)判斷了obj屬于Course類型了還要進(jìn)行強(qiáng)轉(zhuǎn)?
????if?(!(obj?instanceof?Course))????????????? ????return?false;???????? ????Course?course?=?(Course)?obj; ????為什么已經(jīng)判斷了obj屬于Course類型了還要進(jìn)行強(qiáng)轉(zhuǎn)?
2015-11-12
舉報
2015-11-12
你表達(dá)清楚了 但是也說明了你沒學(xué)清楚多態(tài)....
當(dāng)父類引用指向子類對象時,只能使用父類中的屬性和方法,obj是Object類型的 ?這個類里面是沒有name這個屬性的,所以必須得強(qiáng)轉(zhuǎn)之后才能使用name這個屬性
第二個Course course = obj 寫法是錯誤的 ?這里面obj是Object類型, ?子類不能直接指向父類對象所以必須加強(qiáng)轉(zhuǎn)
改為Course?course?=?(Course)?obj;
2016-01-08
樓主可以這樣想,如果傳入的是Course的一個子類呢?當(dāng)然也算是Course類的吧?但是此時要引用父類的屬性,所以要強(qiáng)轉(zhuǎn),因為這里是形參,有很多種情況要考慮。
2015-11-29
obj傳進(jìn)來的時候不是Course類而是他的父類Objece類
至于為什么要強(qiáng)轉(zhuǎn)呢。因為父類不可以使用子類的屬性!
2015-11-20
? 如果一個人是警察 你也知道他是警察了 一般是他要穿上警服 才去巡邏執(zhí)法(不要說特殊情況了)
2015-11-12
就是判斷了obj是Course 才能夠進(jìn)行強(qiáng)轉(zhuǎn) ?instanceof 就是提前判斷能否強(qiáng)轉(zhuǎn)?