[問題] 同名稱reference依執行時情況給予不同型態?
現在有個 Class 叫 Player ,另一個則叫 HiddenPlayer ,
後者是 extends 前者而來, method 皆相同但內部有些不同(不然怎麼叫隱角XD)。
我想做的事是依使用者輸入姓名不同而讓 reference p1 能對應到不同 Class,
一開始很白癡地這樣寫:
if (isPrivileged(name)){
System.out.print("Hidden mode started, enter your initial money: ");
HiddenPlayer p1 = new HiddenPlayer(name, in.nextInt());
}
else {
Player p1 = new Player(name, defaultMoney);
}
但這樣 p1 的 scope 就卡在裡面了,我的腦袋也被卡在裡面......
請問有何解決方法呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.204.28.223
→
04/01 10:32, , 1F
04/01 10:32, 1F
→
04/01 10:35, , 2F
04/01 10:35, 2F
→
04/01 10:37, , 3F
04/01 10:37, 3F
→
04/01 10:41, , 4F
04/01 10:41, 4F
→
04/01 10:43, , 5F
04/01 10:43, 5F
→
04/01 11:03, , 6F
04/01 11:03, 6F
→
04/01 11:33, , 7F
04/01 11:33, 7F
→
04/01 12:02, , 8F
04/01 12:02, 8F
→
04/01 14:06, , 9F
04/01 14:06, 9F