,如果我有一個類myClass1
和第二類myClass1Extended
這是第一類的擴展,我有這樣的代碼:的instanceof,子類和鑄造
myClass1 c1 = something(); // line 1
myClass1Extended c1ex = somethingElse(); // line 2
if (c1ex instanceof myClass1) { // line 3
(myClass1)c1ex.doSomething(); // line 4
}
我有幾個問題:
- 第3行,運營商
instanceof
會返回true嗎? - 第4行,假設第一個答案是肯定的,如果doSomething()在myClass1Extended中沒有被覆蓋會發生什麼?
- 而如果doSomething()被覆蓋會發生什麼?
- 第4行是(myClass1)必要的嗎?
非常感謝您
此問題未顯示任何研究工作。請先嚐試,然後再問。 –
我認爲這是一個有趣的問題,人們給了我很好的答案,不幸的是我會刪除它,因爲還有其他人認爲我應該減去它。 –