作者freewhat (這就是人生嗎)
看板java
標題[問題] 多型請教
時間Wed Mar 24 14:48:12 2010
class Building { }
public class Barn extends Building
{
public static void main(String[] args)
{
Building build1 = new Building();
Barn barn1 = new Barn();
Barn barn2 = (Barn) build1; //1
Object obj1 = (Object) build1; //2
String str1 = (String) build1; //3
Building build2 = (Building) barn1; //4
}
}
上面的程式,我知道 2 , 4 是對的,3是錯的。
書上寫1也是對的,可是這樣 父類別實體轉成子類別 有符合多型的精神嗎?
總覺得1怪怪的,能開導我一下嗎XD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.120.103.217
→ tkcn:1 是錯的,會爆出 Runtime Exception 03/24 15:28
→ TonyQ:欸 對了...靠背 我被騙了 XDDDDDDDddd 03/24 15:42
→ freewhat:那看來是書寫錯了,感謝大家 03/24 17:43
推 tonytonyjan:多型包括up casting 和 down casting@@ 03/25 03:16