Re: [問題] 多型請教

看板java作者 (小安)時間15年前 (2010/03/24 18:23), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/4 (看更多)
※ 引述《freewhat (這就是人生嗎)》之銘言: : 我剛剛實際run了一下程式,再詳細看了書, : 原來書的答案沒錯~ 他是寫說 compile error 的是 只有2 : 1是run time時期才有問題,compile time 是可以過的。 : 是我搞錯了~ QQ : 那這樣我又有一個問題, : 1是run time時期會有ClassCastException,這我是了解的, : 那為什麼2的錯誤是在編譯時期呢? : (2的錯誤: inconvertible types) : 是因為強制轉型的檢查是在編譯時期處理的嗎? : 腦袋快打結了XD 因為 String 和 Building 根本是在不同的 Inheritance chains 上 Object --- String \ -- Building --- Barn 如果你能用 Building 型態去 reference 一個物件(如變數 build1), 該物件就絕對不可能是 String (或著 String 的 sub-class)。 這種檢查在 Compile 時期就找得出來了。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.132.160.117

03/24 18:34, , 1F
感謝
03/24 18:34, 1F
文章代碼(AID): #1BgUWTXe (java)
文章代碼(AID): #1BgUWTXe (java)