Re: [問題] new 語法的疑問

看板java作者 (子不語)時間14年前 (2010/01/01 22:33), 編輯推噓8(803)
留言11則, 8人參與, 最新討論串7/10 (看更多)
※ 引述《SuperNeo (潛水初號機)》之銘言: : Circle c1 = new Circle(); // 建立Circle類別的副本,名字是c1 : 但是下面這行就讓我亂掉了 : Shape c2 = new Circle(); // 這行我無法用中文翻譯-_- : 所以我想弄懂的是 : 最前面的 Circle、Shape 跟最後面的Circle、Shape 各代表什麼意思 我用MMORPG(又稱Online game)的觀念來說明一下..... //所有會動的生物的基本介面 interface Creature { //攻擊其他生物 void hit(Creature target); //執行死亡該做的事情(噴裝備,給對手錢 etc) void die(Creature murder); ......(其他行為就省略了) } //玩家類別,實踐玩家該有的功能 class Player extends Creature{ //玩家死掉的時候,要隨機噴一件裝備到地上,馬上回到墓地 void die(Creature murder){...} } //怪物類別,實踐一個被砍的怪物該有的行為 class Mob extends Creature { //怪物死掉的時候,要把所有裝備與錢丟到地上,並...... void die(Creature murder){} } 這個世界的生物模型被你定義好之後,就可以開始創造世界..... 你在一個空白的地圖上,要創造出一個生物,就可以: Creature mob1 = new Mob(); 這樣你就創造出一個生物了,上面的意思就是 「創造一個生物在記憶體裡,他的實際類別其實是怪物」 Creature mob2 = new Mob(); 這樣你就創造第二個生物了,他的實際類別還是怪物。 Creature player = new Player(); 這樣你創造的第三個生物其實是玩家。 為什麼要這麼麻煩,如果用Mob mob1 = new Mob();Player player = new Player(); 用實際類別來宣告不是更直覺? 詳細的原因有點難講,但總之目的不脫: 1.程式碼重用(subclass) (比較容易理解) 2.介面(subtype) (比較難理解) : -----------------------------抱怨分隔線---------------------------- : 認識的朋友 都是C# .NET派流,所以自修的頗辛苦 C#在語法基礎上與JAVA差不了多少(應該說C#山寨了JAVA的語法才對......) : 加上英文又破,只要連結是英文的就沒耐心看完他。-_-" : 目前自修的書是 "Java2 程式設計範本 陳會安著" 你應該看的是Thinking in Java第三版,或者Java in action這種更入門 但是更紮實的書籍。 內功根基不打好,看過降龍十八掌也打不死一隻蟑螂...... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.139.145

01/01 22:34, , 1F
推:內功根基不打好,看過降龍十八掌也打不死一隻蟑螂!
01/01 22:34, 1F

01/01 22:38, , 2F
心法也很重要,就像那二頁胡家刀法 (誤)
01/01 22:38, 2F

01/01 22:40, , 3F
「C sharp山寨了JAVA」…對呀!沒錯啊~ O_O|||
01/01 22:40, 3F

01/01 22:42, , 4F
微軟推的 J sharp 最後是失敗的~ =_=|||
01/01 22:42, 4F

01/01 22:51, , 5F
J#真的是不知所云 = =
01/01 22:51, 5F

01/01 23:31, , 6F
想了解為什麼要指定 Thinking in Java "第三版"
01/01 23:31, 6F
因為第二版作者還沒學過Design Pattern,某些章節寫出來的內容會有種野人獻曝的 感覺,不過第三版馬上用Design Pattern改良了整本書。

01/01 23:34, , 7F
其實個人不推薦程式新手 Thinking in Java。XD
01/01 23:34, 7F
也是啦,不過如果已經有了一定基礎的程式人,讀Thinking in Java可以很快抓到 Java的精神~~

01/01 23:36, , 8F
我以為是叫 Creature
01/01 23:36, 8F
ker ker,Creator這個字我太常用,腦殘打錯 XD

01/01 23:44, , 9F
王語嫣世界無敵弱...
01/01 23:44, 9F
※ 編輯: neversay 來自: 114.32.139.145 (01/02 00:03)

01/02 00:18, , 10F
王語嫣不是可以提高其他男性隊員的攻擊力嗎?
01/02 00:18, 10F

01/02 00:26, , 11F
我比較愛楊冪版的小郭襄 (L)
01/02 00:26, 11F
文章代碼(AID): #1BFWUg6F (java)
討論串 (同標題文章)
文章代碼(AID): #1BFWUg6F (java)