freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

java桌面游戲爭霸的設計與實現畢業(yè)論文-資料下載頁

2025-06-28 08:01本頁面
  

【正文】 tring output, boolean a, boolean b)方法被實現為:public void sendMessage(String output, boolean a, boolean b){ },其他所有方法類似,雖然它實現了接口中的所有抽象方法,但是沒有具體實現方法的內容,這有什么用呢?因為如果你要是其他的程序中實現該接口,你必須要實現其中的多有方法,無論你用不用的上,所以就會導致一些無用功,然而我們定義了這樣一個適配器類,你就不用實現接口,可以繼承該方法,而重寫其中的一些你需要用到的方法,這樣就省去了很多的無用功,能節(jié)省很多的寶貴時間!在游戲中還需要通過java輸入輸出包來讀取數據或將數據寫入文件保存,這時候需要對文件或數據進行篩選,這時候我們就需要有自己的文件過濾器,所以我們定義一個RiskFileFilter類:public class RiskFileFilter extends FileFilter {…… public RiskFileFilter(String ext) { extension = ext。 } public boolean accept(File f) { if (()) { return true。 } String ext = getExtension(f)。 if (ext != null) { if (( extension )) { return true。 }else { return false。 } } return false。 } public String getDescription(){ …… } public static String getExtension(File f) {……}}最后我們需要主要的類Risk:public class Risk extends Thread {…… public Risk(String a,String b) {} public Risk() {} public void addRiskListener(RiskListener o) {} public void deleteRiskListener(RiskListener o) {} public synchronized void parser(String m) {} public void run() {} public void GameParser(String mem) {} public void DoEndGo() {} public void getInput() {} public String getAutoDefendString() {} public String whoWon() {} public static Frame findParentFrame(Container c) {} public static String getNewFile(Frame f,String a) {} public synchronized void kickedOff() { } public Vector getCurrentCards() {} public boolean isOwnedCurrentPlayerInt(int name) {} public String getCurrentMission() {} public Color[] getPlayerColors() {} public Color getCurrentPlayerColor() {} public boolean canTrade(String c1, String c2, String c3) {} public RiskGame getGame() {} public String getCountryName(int c) {} public boolean getAutoEndGo() {} public boolean getAutoDefend() {} public static Color getTextColorFor(Color c) {}} 游戲界面的設計一個游戲只有好的界面的才能吸引玩家,要有很好的交互性,所以本游戲的開發(fā)過程中就是以操作簡便、界面美觀、靈活實用的用戶要求為出發(fā)點的,當玩家進入游戲時,游戲的主界面的設計如下圖所示:圖48 游戲的主界面。其主要實現代碼SwingGUIFrame如下:public class SwingGUIFrame { public static void main(String[] argv) { try { String os = ()。 if ( os != null amp。amp。 (Linux)) { ()。 } else { (())。 } } catch (Exception e) { ()。 } JFrame gui = new JFrame()。 ( new SwingGUIPanel( new Risk() ) )。 ( )。 (().getImage( () ))。 (false)。 ()。 ()。 Dimension screenSize = ().getScreenSize()。 Dimension frameSize = ()。 = (( ) ? : )。 = (( ) ? : )。 (( ) / 2, ( ) / 2)。 (true)。 }}當你單擊選擇進行新游戲時,出現游戲設置面板,如圖49所示;當你選擇載入游戲時,如圖410 所示;控制臺面板如圖412所示;統(tǒng)計面板如圖413所示;游戲中的界面如圖411所示;卡片交易面板如圖414所示;關于面板如圖415所示;圖49 游戲設置面板圖410 載入游戲面板圖411 游戲過程中實現這些界面的是類SwingGUIPanel,其中實現游戲界面的方法主要是GamePaenl()主要實現代碼: public GamePanel() { pp = new PicturePanel(myrisk)。 (mapSize)。 (mapSize)。 (mapSize)。 ((new (0,0,0),1))。 (this)。 (this)。 Dimension gameOptionsSize = new Dimension(,25)。 gameOptions = new GameOptionsPanel()。 (gameOptionsSize)。 (gameOptionsSize)。 (gameOptionsSize)。 Dimension d = new Dimension( , 50)。 inGameCards = new CardLayout()。 inGameInput = new JPanel()。 ( inGameCards )。 (d)。 (d)。 (d)。 JPanel nothing = new JPanel()?!? JPanel results = new JPanel()?!? JPanel placeArmies = new placeArmiesPanel()?!? roll = new rollPanel()。 JPanel move = new movePanel()。 JPanel attack = new attackPanel()。 defend = new defendPanel()。 …… // IN GAME (new ())。 GridBagConstraints c = new GridBagConstraints()。 = new (3, 3, 3, 3)。 = 。 = 0。 // col = 0。 // row = 1。 // width = 1。 // height (gameOptions, c)。 = 0。 // col = 1。 // row = 1。 // width = 1。 // height (pp, c)。 = 0。 // col = 2。 // row = 1。 // width = 1。 // height (inGameInput, c)。 }圖412 控制臺面板圖413 統(tǒng)計面板圖414 交易面板圖415 關于面板5 用戶使用手冊 系統(tǒng)環(huán)境說明本游戲沒有操作系統(tǒng)的限制,沒有硬件的限制,只要求是在PC機上且該機子裝了JRE(),這就是用Java開發(fā)出來的游戲的優(yōu)勢。而本游戲是在Windows XP操作系統(tǒng),jdk 。 系統(tǒng)簡介 系統(tǒng)特點⑴ 用戶無需考慮系統(tǒng)的維護;⑵ 操作簡單,一目了然;⑶ JAVA開發(fā),可移植性好; 操作方法,,玩家只需要雙擊該命令行文件就可以運行游戲了,游戲菜單欄有四個菜單:游戲、控制臺、統(tǒng)計和幫助。在菜單下一行是二級菜單。如圖所示:圖51 游戲菜單當你選擇想進行一輪新的游戲時,你可以選擇“新游戲”,如果你曾經保存過了游戲,你想接著玩,可以選擇“裝載游戲”;剛開始游戲時,“保存游戲”按鈕和“關閉游戲”按鈕是灰色的(不可點擊),只有游戲過程當中才能保存和關閉游戲;如果你想進行網絡聯機游戲,并做服務器,可以點擊“啟動服務器”,等待其他玩家的加入,若網上有其他玩家已經建立了游戲,你可以選擇“加入游戲”如果玩家想了解一下游戲的其他信息,可以選擇“關于”,你也可以通過點擊“退出”按鈕退出游戲或則直接關閉游戲窗口。 圖52 控制臺菜單控制臺會在在整個過程中記錄并顯示游戲中用過的命令,玩家可以通過直接點擊按鈕進行游戲,也可以通過控制臺的命令行輸入命令來進行游戲,只需要點擊“命令”按鈕就可以看到多有的命令列表和說明。 圖53 統(tǒng)計菜單統(tǒng)計菜單可以讓玩家選擇某個數據的統(tǒng)計圖,例如玩家只需點擊“國家”按鈕就可以看到各個玩家在游戲過程中的國家的數目的統(tǒng)計圖,選擇“軍隊”按鈕就可以看到游戲過程中各個玩家的軍隊數目的統(tǒng)計圖,依次類推。在進行單機新游戲時,玩家可以自己選擇電腦玩家的數量和難度,數量不同的游戲模式有所不同,每個玩家有自己的名字和顏色都可以設置,如圖:圖54 設置玩家面板游戲模式分為統(tǒng)治、首都和任務三種,統(tǒng)治模式是玩家要占領所有玩家為勝利,首都模式是玩家需要將敵人的首都都占領算勝利,任務是在電腦隨機分配了軍隊的情況下占領全世界為勝利,玩家通過單選框選擇,如圖所示:圖55 選擇游戲類型游戲開始后玩家只需要隨的游戲中的提示進行就可以了。 游戲需要改進的地方本游戲完全是基于java圖形開發(fā)的,沒有設計到聲音的開發(fā),所以在游戲的以后版本中將會在游戲中加入聲音效果,并且游戲的界面并不是很美觀,所以在游戲的后續(xù)版本中會繼續(xù)美化游戲的界面;還有一點就是游戲的網絡包部分還存在很多的bug,經常會出現一些問題,有時候會連接不上,這也是本游戲主要的需要改進的地方。 結 論本次畢業(yè)設計到此就已經順利結束了,通過這次的畢業(yè)設計,我學到了很多東西。在以前的三年多的時間里我學習了很多的課程,從開始的計算機理論基礎,到c語言,數據結構,c++,Java,數據庫系統(tǒng)概論等等。雖然通過學習對這些課程有所了解和掌握,但也只是膚淺的了解,也只是停留在對理論知識的理解階段,對知識的中我還不夠全面和熟練,并不能進行編程開發(fā),更不用說實際項目的開發(fā)了。這次的畢業(yè)設計,使我將大學四年中所學到的很多東西貫串起來,并真正地第一次的在實踐中運用起來,在設計中還存在許多我們平時沒有接觸過的新知識,這就培養(yǎng)了我快速自學和應用新知識的能力。此次設計不僅是對我所學知識的一次綜合應用,更是對我綜合分析實際問題、處理實際問題、解決實際問題的能力的培養(yǎng)和鍛煉。在本次畢業(yè)設計中我需要學習的不僅僅是JAVA語言和NeatBeans IDE開發(fā)工具,還有其他很多方面的知識都需要我去了解和掌握。本文同時運用了UML的基本知識,以及使用UML進行建模的方法,通過敏捷型方法思想,完成了本系統(tǒng)的UML建模工作,并在UML模型的基礎上,實現了該游戲。雖然對該UML建模方法作了一定的學習和探索,但是,由于時間、條件有限,經驗不足等,本文所做的工作還有很多不足,還有很多方面需要進一步學習和研究。學習最終是為了服務社會,我即將踏入社會,通過畢業(yè)設計的訓練,我將會更加適應這個社會。成績已屬于過去,面對未來,我充滿信心!相信明天一定會更好! 參 考 文 獻[1] Thomas :清華大學出版社,2005[2] ,ObjectOriented Modeling and Design,Printice Hall,1991[3] Patrick Keegan,Ludovi
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1