以前幾篇博客一大堆廢話,着實浪費時間也沒啥實際做用。除了總結一些java的知識點外,再用一些比喻或者形象化的語言來表述這些知識點,無可厚非。可是,如今看來,應當減小這種堆滿偏理論式偏方法性的內容的博客寫做。實在是精力有限。在這種信息爆炸的時代,過往時間的純潔性會逐漸喪失,只有高效地掌握信息運用信息纔不會被世界遠遠拋在身後。java
面向對象和麪對過程。這裏拿個例子簡單說明一下。一個問題:如何把大象裝進冰箱?面向過程:1.人完成打開冰箱的動做。2.人完成把大象裝進冰箱的動做。3.人完成關上冰箱的動做。面向對象:1.人:我要解決把大象裝進冰箱這個問題。2.冰箱:收到指示依次完成打開冰箱、裝進大象、關上冰箱的動做。面向過程只是單純地解決一件事情,而面向過程是對面向過程解決這一件事情本質的抽象,達到可以完成解決一類事情的目的。這一點和咱們所處世界同樣,咱們老是想着觸類旁通,找到一些事物的本質規律以此更好地解決相似的問題。這麼說也許仍是有點不太清楚,下面看一看《Head First Java》中是如何用具體的問題加代碼來講明面向過程和麪向對象的區別。這一部分留到下一篇博客。設計
最後談一下《Head First Java》中用面向對象的思想設計一個遊戲的思路。照理說應該也要談一談用面向過程來設計,以此對照,這裏就留到下篇再談。看書以後個人見解是:1.遊戲。2.人。這一點是從問題上出發。實際程序設計,從程序出發是這樣:1.啓動遊戲。2.運行遊戲。3.結束遊戲。我所談的到「人」也就是問題的解決者,只充當一個問題解決的設計者。遊戲是一個對象,一個object。實例變量是遊戲的狀態:運行/關閉以及遊戲的基本參數,而方法是遊戲的行爲:啓動、運行(包括了遊戲規則)、關閉。這裏就這個問題只是從總體上談了一下,看起來就一個單薄的object。可是現實世界豐富多彩,處處都充滿了object,而這些object再加上它們之間的關係就構成一個總體,the world。對象