[問題] is-a 關係在Java程式的時候的用意?
我用Java SE技術手冊 良葛格 這本想提問題
(第六章 6-7頁)
一個遊戲 腳色(Role)類別
劍士(SwordsMan)、魔法師(Magician) 則是繼承了 Role類別的所有基本腳色該有的東西
也就是 SwordsMan is-a Role , Magician is-a Role
通常在Java 看到的實作劍士(SwordsMan)、魔法師(Magician)
通常都會這樣寫:(1)
SwordsMan role1 = new SwordsMan();
Magician role2 = new Magician();
但是,通常也會看到這樣寫:(2)
Role role1 = new SwordsMan();
Role role2 = new Magician();
我想請問的是這兩種寫法有什麼差別?
因為現在遇到看不懂的地方也包含
就我的認知是應該這樣寫
ArrayList<Map<String,Object>> list
= new ArrayList<Map<String,Object>>();
但是看到這 就不知道為什麼 可以這樣寫 用意何在?
List<Map<String,Object>> list
= new ArrayList<Map<String,Object>>();
就是想問說(1)與(2) 這樣的寫法 有什麼差別呢???
(2) 的寫法有什麼用意???
謝謝大家~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 113.196.180.48
※ 編輯: SamLucien 來自: 113.196.180.48 (07/31 18:02)
※ 編輯: SamLucien 來自: 113.196.180.48 (07/31 18:02)
→
07/31 18:11, , 1F
07/31 18:11, 1F
→
07/31 20:52, , 2F
07/31 20:52, 2F
→
07/31 20:53, , 3F
07/31 20:53, 3F
→
07/31 20:54, , 4F
07/31 20:54, 4F
→
07/31 20:56, , 5F
07/31 20:56, 5F
→
08/01 00:34, , 6F
08/01 00:34, 6F
推
08/01 09:01, , 7F
08/01 09:01, 7F
→
08/01 09:18, , 8F
08/01 09:18, 8F
→
08/01 09:19, , 9F
08/01 09:19, 9F
推
08/01 11:39, , 10F
08/01 11:39, 10F
→
08/01 12:51, , 11F
08/01 12:51, 11F
→
08/01 12:53, , 12F
08/01 12:53, 12F
討論串 (同標題文章)
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 1 之 3 篇):