坦克大戰項目
坦克大戰遊戲是非常經典的JAVASE基礎項目,可以將JAVASE各章節內容進行綜合的練習,為以後的工作和學習打下紮實的基礎。
坦克大戰分為基本版、圖片版、網絡版。
坦克大戰的基本版和圖片版較為簡單可以培養大家的基本編程思維,提高大家解決問題的能力。
坦克大戰的網絡版: 講師手把手帶領學員講坦克大戰升級為網絡遊戲,處於局域網中的所有電腦都可以參戰遊戲,深刻的揭示了 網絡遊戲的基本理論。項目中廣泛使用了IO流技術、socket編程、多線程技術等。
坦克大戰項目路線展示
01 坦克大戰第一節
new 出一個窗口
設定標題欄內容
TankFrame從Frame繼承+顯示
認識paint方法,重寫
02坦克大戰第二節
學習graphics類,畫圖
學習repaint方法
實現MyKeyListener,對鍵盤作出響應
MyKeyListener從KeyAdapter繼承
03 坦克大戰第三節
取得具體按鍵信息
根據具體按鍵調整坦克位置,持有對方引用
抽象出坦克類,學習使用枚舉類型
04坦克大戰第四節
把監聽處理類MyKeyListener放到TankFrame內
用匿名內部類處理窗口關閉
根據按鍵狀態,改變坦克方向
05坦克大戰第五節
根據坦克方向移動位置
能停,能動
test包,關於classloader的知識
06坦克大戰第六節
將坦克換成圖片版
畫出一顆子彈,讓子彈飛一會兒
按下ctrl鍵,主戰坦克打出一發炮彈
07坦克大戰第七節
打出多發子彈
子彈從坦克中心位置打出
子彈消亡(飛出遊戲區)
08坦克大戰第八節
定義rectangle屬性,不用每次都new
炮彈new出來自動加入容器,死掉後自動去除
分離玩家和機器人,對邊界進行不同的處理
09坦克大戰第九節
用雙緩衝消除閃爍
加一堆敵人坦克
做碰撞檢測
10 坦克大戰第十節
顯示爆炸
加入聲音
讓敵人坦克更加智能
11坦克大戰第十一節
對坦克和子彈加入 Group屬性
測試Properties類的使用
建立PropertyMgr類
12坦克大戰第十二節
MV分開 Model View分離
GameModel 改成單例模式
對於碰撞的處理
13坦克大戰第十三節
Class.forName().newInstance()
抽象出遊戲物體的父類
合成GameModel中的各種不同物體
14坦克大戰第十四節
完善責任鏈模式
加入牆
按鍵切換髮射策略
15坦克大戰第十五節
實現暫停功能
實現存盤功能
使用Junit測試服務器loop
16坦克大戰第十六節
去掉敵人的坦克(機器控制的坦克)
處理接收到的消息
player新的構造方法
17坦克大戰第十七節
讓後來人能看到先加入者
加入坦克方向改變的消息
重構代碼
18坦克大戰十八節
處理改變坦克方向的消息
發送主戰坦克停止的消息
發送主戰坦克開始移動的消息(方向沒變)
19坦克大戰第十九節
加入子彈和Player的撞擊邏輯
把主戰坦克也加入到List中
完成坦克大戰網絡版
坦克大戰項目視頻
坦克大戰視頻教程筆記
23種設計模式目錄及文檔目錄
創建型
1. Factory Method(工廠方法)
2. Abstract Factory(抽象工廠)
3. Builder(建造者)
4. Prototype(原型)
5. Singleton(單例)
結構型
6. Adapter Class/Object(適配器)
7. Bridge(橋接)
8. Composite(組合)
9. Decorator(裝飾)
10. Facade(外觀)
11. Flyweight(享元)
12. Proxy(代理)
行為型
13. Interpreter(解釋器)
14. Template Method(模板方法)
15. Chain of Responsibility(責任鏈)
16. Command(命令)
17. Iterator(迭代器)
18. Mediator(中介者)
19. Memento(備忘錄)
20. Observer(觀察者)
21. State(狀態)
22. Strategy(策略)
23. Visitor(訪問者)
23種設計模式視頻
從上面可以很清晰的看到坦克大戰和23種設計模式的文檔與視頻,小編都為大家準備好了,如果大傢伙需要的話,可以轉發此文關注小編,私信小編“學習”來得到獲取方式吧!
閱讀更多 大數據程序員工程師 的文章