Re: [問題] 以父類別宣告然後以子類別的建構子new
※ 引述《jb0802 (james)》之銘言:
: ※ 引述《qrtt1 (愚人)》之銘言:
: : 忍者 n = new 自來也();
: : 忍者 m = new 綱手();
: : n.招喚術(); // 文太出現了
: : m.招喚術(); // 蝸蝓出現了
: : ==============================
: : 這就是抽象化, 不管子類怎麼實作
: : 對於父類知道有招喚術即可.
: : 你並不用指揮某一個忍者要招喚什麼 (他也不一定會(實作))
: : 只要有東西出來就好 XD
: 還有一點問題~~所以再發另一篇文~~
: 這樣與使用 自來也 n = new 自來也(); 所做出來的物件n應該和
: 忍者 n = new 自來也(); 這兩個應該是一樣的n吧
: 會有什麼不一樣的地方嗎?
: 另外,如果兩者一樣,我個人的習慣是 當然是把他宣告成 自來也 n=new 自來也();
: 因為這樣不是讓自己比較清楚它是自來也嗎?
: 有些自來也有且忍者沒有的方法,我也會記得它可以被拿來叫用。
恩... 反過來說,如果用
忍者 n = new 自來也();
你就不能用
n.寫親熱系列();
除非強制轉型,這樣子又會加深你的疑惑 XDXD
: 另外一個問題,會使用這樣的原因是因為父類別有abstract的方法
: 在子類別給實作了才會有這樣的宣告嗎?
我原本也想回答 qrtt1 的內容(路人:咪的! 馬後炮...)
不過後來想想,通常那都是以 method 的形式出現
public static void 展示招喚術(忍者[] 忍者們){
for(int i=0; i<忍者們.length; i++){
//用 for each 好像比較有感覺 XD
忍者們[i].招換術();
}
}
你要嚴格地只討論「在 new 的時候有沒有差」
ㄜ... 我還真想不到差別在哪...
期待其他高手回答這樣... Orz
--
侃侃長論鮮窒礙 首頁:http://www.psmonkey.idv.tw
眾目睽睽無心顫 Blog:http://ps-think.blogspot.com
煢居少聊常人事
殺頭容易告白難 歡迎參觀 Java 版(@ptt.cc)精華區 \囧/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.200.178
推
03/04 09:54, , 1F
03/04 09:54, 1F
推
03/04 11:00, , 2F
03/04 11:00, 2F
→
03/04 11:40, , 3F
03/04 11:40, 3F
推
03/05 05:27, , 4F
03/05 05:27, 4F
推
03/05 05:31, , 5F
03/05 05:31, 5F
討論串 (同標題文章)