java 板


LINE

※ 引述《qrtt1 (愚人)》之銘言: : ※ 引述《jb0802 (james)》之銘言: : : 還有一點問題~~所以再發另一篇文~~ : : 這樣與使用 自來也 n = new 自來也(); 所做出來的物件n應該和 : : 忍者 n = new 自來也(); 這兩個應該是一樣的n吧 : : 會有什麼不一樣的地方嗎? : : 另外,如果兩者一樣,我個人的習慣是 當然是把他宣告成 自來也 n=new 自來也(); : : 因為這樣不是讓自己比較清楚它是自來也嗎? : : 有些自來也有且忍者沒有的方法,我也會記得它可以被拿來叫用。 : : 另外一個問題,會使用這樣的原因是因為父類別有abstract的方法 : : 在子類別給實作了才會有這樣的宣告嗎? : 是一樣啊, 不過不夠抽象化 : 當任務來的時候需要任務編組 : Team { : 醫療忍者 m; : 忍者 n; : 隊長 o; : 自來也 p; : } : 醫療忍者需 實作 interface "治療" { 施展治療忍術(); } : ======================================================= : 每次你要組個 Team 自來也都要到, 他怎麼有時間寫小說呢 XD : 而且這樣的設計是不是表示, 沒有自來也 Team 就不完整了呢? : Team { : 醫療忍者 m = new 小櫻(); : 忍者 n = new 鳴人(); : 隊長 o = new 卡卡西(); : } : Team { : 醫療忍者 m = new 小櫻(); : 忍者 n = new 鳴人(); : 隊長 o = new 自來也(); : } : Team { : 醫療忍者 m = new 綱手(); : 忍者 n = new 自來也(); : 隊長 o = new 飛猿(); : } : 只要型別對了, 自來也可以出現在任何位置, Team 的安排也能很自由 : 不會因為少了自來也而不能組 Team 不好意思,推了一個2008年的古文@@ 這兩天在學java也遇到了同樣的問題,雖然全部回文都看完了,卻還是有點疑問存在 我想請問說,既然我寫程式的人都知道說我就是要用自來也, 那為什麼我就不要直接寫 自來也 n = new 自來也(); 呢? 看了上述的任務邊組的例子後還是有點不懂, 如果說現在要組一個team Team { 醫療忍者 m = new 綱手(); 忍者 n = new 自來也(); 隊長 o = new 飛猿(); } 就好像說,我都知道鋼手要當醫療忍者了,也知道飛猿要當隊長 那為什麼寫程式時不就乾脆寫成 Team { 鋼手 m = new 綱手(); 自來也 n = new 自來也(); 飛猿 o = new 飛猿(); } 這樣呢? 如果忍者這父類別有一個abstract的招換術需要子類去定義他 那繼承忍者的所有類別,都一定會去定義招換術不是嗎? 那既然繼承的子類都定義了,那麼所有的方法也都可以安心使用不是嗎@@? 就像前面的文章所說的 忍者 n = new 自來也(); 忍者 m = new 綱手(); n.招喚術(); // 文太出現了 m.招喚術(); // 蝸蝓出現了 因為自來也、鋼手都是繼承忍者的,所以他們肯定會定義招換術,那麼程式寫成 自來也 n = new 自來也(); 鋼手 m = new 綱手(); n.招喚術(); // 文太出現了 m.招喚術(); // 蝸蝓出現了 這樣也沒錯不是嗎@@? 拜託各位幫忙解除小弟的疑問,謝謝大家 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.159.8.95
※ 文章網址: http://webptt.com/m.aspx?n=bbs/java/M.1405701757.A.583.html
1F:推 LPH66:當你要把自來也給別人用時就不一定了 07/19 00:44
2F:→ LPH66:別人只知道他拿到一個忍者, 但是叫他用招喚術還是會出現文太 07/19 00:44
請問這個別人,是說另外一個寫程式的人嗎? 可是如果說別人要用到別的忍者時,他如果想用鋼手,那麼他不就可以改成 鋼手 n = new 鋼手(); 這樣嗎@@? ※ 編輯: yoll522 (49.159.8.95), 07/19/2014 01:03:33 突然間想到,還是說其實這跟寫程式的一方無關,而是跟執行時有關? 就假設說這是一個遊戲,剛開始要讓使用者選角 忍者 role; int index = 取得使用者選的角色; switch(index){ case 1: role = new 自來也(); break; case 2: role = new 鋼手(); break; } 會是這樣嗎@@? 還是我一樣理解錯誤ˇ_ˇ ※ 編輯: yoll522 (49.159.8.95), 07/19/2014 01:06:06
3F:推 putumaxally:應該是對了 07/19 01:34
4F:→ jtorngl:List<忍者> ninjas = getNinja(String[] nids); 07/19 17:43
5F:→ jtorngl:你應該不會想用instanceof去檢查instance的實際型別 07/19 17:45
6F:推 luoqr:照你的宣告法 如果你要同時操作很多Team 那肯定寫的很醜 07/19 18:51
7F:→ luoqr:或是Team裡有個大絕招需要三個角色合體完成的話 就會不好寫 07/19 18:53
8F:→ yoll522:我明白了,謝謝各位的解說 07/20 19:13







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:iOS站內搜尋

TOP