![](https://static.zsdocx.com/FlexPaper/FileRoot/2019-6/5/21/266904f9-fcb7-4c63-bc09-e03ed5f72c37/266904f9-fcb7-4c63-bc09-e03ed5f72c37pic.jpg)
![java五子棋游戲畢業(yè)論文_第1頁](https://static.zsdocx.com/FlexPaper/FileRoot/2019-6/5/21/266904f9-fcb7-4c63-bc09-e03ed5f72c37/266904f9-fcb7-4c63-bc09-e03ed5f72c371.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 目 錄</b></p><p><b> 第一章:緒論1</b></p><p> 1.1 開發(fā)背景1</p><p><b> 1.2課題意義1</b></p><p> 1.3五子棋游戲的發(fā)展與現(xiàn)狀錯誤!未定義書簽。</p
2、><p> 1.4論文的組織結(jié)構(gòu)3</p><p> 第二章: 系統(tǒng)使用工具介紹4</p><p> 2.1 編程語言4</p><p> 2.1.1 java語言介紹4</p><p> 2.1.2 java語言的優(yōu)點4</p><p> 2.2 Eclipse集成平臺介紹
3、6</p><p> 2.2.1 Eclipse概述6</p><p> 2.2.2 Eclipse的安裝、設(shè)置與啟動 6 </p><p> 第三章: 五子棋程序的介紹與規(guī)劃8</p><p> 3.1軟件的基本功能8</p><
4、;p> 3.2軟件的實現(xiàn)目的9</p><p> 第四章: 系統(tǒng)功能分析與算法分析9</p><p> 4.1 系統(tǒng)功能9</p><p> 4.2 算法分析9</p><p> 第五章: 系統(tǒng)設(shè)計10</p><p> 5.1 詳細功能分析10</p><p>
5、 5.2 設(shè)計思路12</p><p> 第六章: 系統(tǒng)的具體實現(xiàn)1錯誤!未定義書簽。</p><p> 6.1準備工作1錯誤!未定義書簽。</p><p> 6.2建立游戲窗口界面1錯誤!未定義書簽。</p><p> 6.3完成下棋的功能17</p><p> 6.4完成判斷勝負的功能17&l
6、t;/p><p> 6.5完成一些按鈕的功能17</p><p> 第七章: 五子棋功能的演示20</p><p> 7.1軟件的調(diào)試以及改錯20</p><p><b> 結(jié) 語21</b></p><p><b> 參考文獻22</b></p&
7、gt;<p><b> 致 謝23</b></p><p><b> 第一章 緒 論</b></p><p><b> 1.1開發(fā)背景</b></p><p> 游戲軟件是當今世界發(fā)展最迅速,最有影響力,最有潛力與活力的領(lǐng)域之一?游戲軟件深受廣大青年人喜愛,而且在發(fā)達國家
8、中老年人也有大部分喜歡游戲的,因此游戲軟件在很大程度上給予絕大部分人精神上的娛樂?第二次世界大戰(zhàn)以后,電子計算機技術(shù)得到了突飛猛進的發(fā)展?先是由晶體管代替了笨重的真空管,后來出現(xiàn)了集成電路和大規(guī)模集成電路,使電子子計算機一代一代實現(xiàn)更新,同時軟件技術(shù)也發(fā)展迅速?在美國,集中了許多計算機軟件的設(shè)計人才,他們工作之余,時常喜愛編一種能與人斗智的“游戲”,以此來鍛煉編程的能力?這種“游戲”花樣繁多,但其特點都是利用計算機軟件事先設(shè)計好的“分析
9、”?“判斷”能力反過來與人較量?由于不斷修改更新,使計算機的“智力”水平與人難分高低?到了90年代,游戲軟件已經(jīng)為世界各國的人使用,BLACKISLAND和Blizzard.這兩個強大的游戲制作組起到了巨大的帶動作用,還有中國的洛河工作室在國內(nèi)也起到了巨大作用,他們讓很多很多人喜歡上了游戲軟件,打開了這個市場。如今游戲軟件產(chǎn)業(yè)已經(jīng)受到了廣泛的關(guān)注,而且游戲軟件有潛力而且吸引人,讓人們?nèi)找尕S富的生活需求得以滿足。</p>&
10、lt;p> 五子棋游戲更是吸引著不同年齡段的人群,無論男女老少都可以玩,都喜歡玩,而當前微型計算機已經(jīng)是在廣大人群中流行著,用電腦來下五子棋更是一種時尚。五子棋相傳起源于四千多年前的堯帝時期,比圍棋的歷史還要悠久,可能早在“堯造圍棋”之前,民間就已有五子棋游戲。有關(guān)早期五子棋的文史資料與圍棋有相似之處,因為古代五子棋的棋具與圍棋是完全相同的。在上古的神話傳說中有“女媧造人,伏羲做棋”一說,《增山海經(jīng)》中記載:“休輿之山有石焉,名
11、曰帝臺之棋,五色而文狀鶉卵?!崩钌谱⒁龂汉惔尽端嚱?jīng)》中曰:“棋局,縱橫各十七道,合二百八十九道,白黑棋子,各一百五十枚”??梢?,五子棋頗有淵源。亦有傳說,五子棋最初流行于少數(shù)民族地區(qū),以后漸漸演變成圍棋并在炎黃子孫后代中遍及開來,可以說五子棋是我們的國粹之一了。而當前五子棋程序的發(fā)展也非常快,從最初的雙人發(fā)展到人機,然后到現(xiàn)在的網(wǎng)絡(luò)對戰(zhàn),已經(jīng)受到越來越多人的喜愛和重視。</p><p><b>
12、 1.2課題意義</b></p><p> 人類之所以不斷在進步,是因為我們?nèi)祟愐恢辈粩嗟脑谒伎?,五子棋游戲程序的開發(fā)符合人類進步也是促進人類進步的一大動力之一。五子棋游戲程序讓人們方便快捷的可以下五子棋,讓人們在何時都能通過下棋來提高邏輯思維能力,同時也培養(yǎng)兒童的興趣以及愛好,讓孩子更加聰明。同時,五子棋游戲程序的開發(fā)也使得五子棋這個游戲得到了廣泛的推廣,讓世界各地的人們知道五子棋,玩上五子棋,這
13、已經(jīng)不是局限。五子棋游戲程序使得越來越多的人喜歡上了五子棋,熱愛下五子棋,它是具有很好的帶動性的。隨著互聯(lián)網(wǎng)絡(luò)的不斷普及,越來越多的人可以在網(wǎng)絡(luò)上就能夠與他人下五子棋了。</p><p> 1.3五子棋游戲的發(fā)展與現(xiàn)狀</p><p> 目前,連珠這一棋類運動已迅速在國際上發(fā)展起來。外國人都十分看好這一不起眼的智力游戲,并認為五子棋不僅能提高思維、開發(fā)智力、手腦并用、修身養(yǎng)性 而且富含
14、哲理,具有東方的神秘和西方的直觀,是中西文化的交匯點。許多國家的人對五子棋都有不同的愛稱,例如韓國人把五子棋稱之為“情侶棋”,言下之意是情人之間下五子棋有利于增加情感的交流;歐洲人稱之為“中老年棋”,表示五子棋適合中老年人的生理特點和思維方式;美洲人喜歡將五子棋稱之為“商業(yè)棋”,就是說商人談生意時可邊下棋邊談生意,棋下完了生意也談成了。由此可見,盡管國度不同,語言各異,但人們都可以借助五子棋這一簡單而又深奧的棋藝進行交流、比賽,增進友誼
15、。</p><p> 1988年8月8日,國際連珠聯(lián)盟(RIF)由日本、俄羅斯、瑞典、亞美尼亞、阿塞拜疆、愛沙尼亞、拉脫維亞、白俄羅斯等8個成員國在瑞典宣告創(chuàng)立,中國于 1996年正式加入國際連珠聯(lián)盟,現(xiàn)在全世界已有近50個國家和地區(qū)成為國際連珠聯(lián)盟的正式會員。職業(yè)連珠的世界錦標賽從1989年起每兩年舉辦一次,現(xiàn)已舉辦了十一屆。日本目前擁有自己的五子棋職業(yè)棋手,并且對五子棋技術(shù)的研究也相當普遍和全面,就水平也正
16、在日益增強。同時,五子棋的理論研究與探索也呈現(xiàn)蓬勃發(fā)展的勢頭,從1858年第一部五子棋專著問世以來,目前,全世界有2000多種五子棋的書籍及期刊,分別以日文、俄文、英文、瑞典文及中文出版發(fā)行。五子棋在我國的北京、上海、天津、云南、浙江、廣東、四川、湖北、遼寧、新疆、河北等省(區(qū))市都有很大的發(fā)展。北京多次舉辦了北京地區(qū)的五子棋賽,如“思曼杯”、“京空杯”、“奇奇童杯”、“北京第六屆民族團結(jié)杯”和“北京第四豈民族運動會”的五子棋比賽。上海
17、地區(qū)舉辦了“上文杯”五子棋大賽。云南省以及其他省市亦舉辦過許多五子棋比賽。所有這些賽事都越來越多地吸引了無數(shù)人們的關(guān)注,表明了根植于中國的五子棋有著廣泛的群眾基礎(chǔ),是群</p><p> 1.4論文的組織結(jié)構(gòu)</p><p> 第二章 系統(tǒng)使用工具介紹</p><p> 本章節(jié)主要介紹了本系統(tǒng)使用的編程工具Eclipse,同時簡單的介紹了Java這一編程語言,
18、以及Java語言相比其它編程語言所具有的優(yōu)勢。</p><p><b> 2.1 編程語言</b></p><p> 2.1.1 Java語言介紹</p><p> 現(xiàn)代技術(shù)的發(fā)展,尤其是網(wǎng)絡(luò)技術(shù),給現(xiàn)代企業(yè)帶來了許多新的機遇和挑戰(zhàn),如改善客戶服務(wù)、全球化和信息檢索等,這些在技術(shù)上反映為信息的獲取、系統(tǒng)管理、系統(tǒng)集成、新技術(shù)的開發(fā)、Int
19、ernet、Intranet等等與商業(yè)的結(jié)合。而這些要求一個隨處可用的開放的結(jié)構(gòu)和在不同的平臺之間低成本的信息傳遞方式,Java正好滿足這些要求。</p><p> Java是由Sun Microsystems公司于1995年5月推出的Java程序設(shè)計語言(以下簡稱Java語言)和Java平臺的總稱。用Java實現(xiàn)的HotJava瀏覽器(支持Java applet)顯示了Java的魅力:跨平臺、動感的Web、I
20、nternet計算。從此,Java被廣泛接受并推動了Web的迅速發(fā)展,常用的瀏覽器現(xiàn)在均支持Java applet。另一方面,Java技術(shù)也不斷更新。Java平臺由Java虛擬機(Java Virtual Machine)和Java 應(yīng)用編程接口(Application Programming Interface、簡稱API)構(gòu)成。Java 應(yīng)用編程接口為Java應(yīng)用提供了一個獨立于操作系統(tǒng)的標準接口,可分為基本部分和擴展部分。在硬件或
21、操作系統(tǒng)平臺上安裝一個Java平臺之后,Java應(yīng)用程序就可運行?,F(xiàn)在Java平臺已經(jīng)嵌入了幾乎所有的操作系統(tǒng)。這樣Java程序可以只編譯一次,就可以在各種系統(tǒng)中運行。Java應(yīng)用編程接口已經(jīng)從1.1.x版發(fā)展到1.2版。目前常用的Java平臺基于Java1.2。</p><p> Java語言是一個支持網(wǎng)絡(luò)計算的面向?qū)ο蟪绦蛟O(shè)計語言。Java語言吸收了Smalltalk語言和C++語言的優(yōu)點,并增加了其它特性
22、,如支持并發(fā)程序設(shè)計、網(wǎng)絡(luò)通信、和多媒體數(shù)據(jù)控制等。</p><p> 2.1.2 Java語言的優(yōu)點</p><p> Java技術(shù)取得今天這樣的成就,依賴于這門技術(shù)的先進性,Java技術(shù)具有下列優(yōu)點:①簡單、健壯:許多高級語言都要由程序員進行指針運算和存儲器管理。這項工作即復(fù)雜又容易出錯。Java不需要程序員進行指針運算和存儲器管理,簡化了設(shè)計,減少了出錯的可能性。②面向?qū)ο螅篔a
23、va是面向?qū)ο蟮某绦蛟O(shè)計語言。與面向過程的語言相比,面向?qū)ο蟮恼Z言更能反映人類對世界的認識和處理模式,具有良好的代碼重用性。處理復(fù)雜、龐大而且不斷變化的信息系統(tǒng),必須使用面向?qū)ο蟮某绦蛟O(shè)計語言。③分布式:目前,在所有軟件產(chǎn)品中,僅供單個計算機使用的單機版軟件所占的比例越來越小。大多數(shù)軟件都可以運行在網(wǎng)絡(luò)環(huán)境中。Java擁有一個網(wǎng)絡(luò)協(xié)議對象庫(TCP/IP,HTTP,FTP等),可以象訪問當?shù)匚募粯釉L問Internet上的對象。④改進的
24、解釋性:為彌補解釋語言速度較慢的不足,Java采用預(yù)編譯的辦法,將原程序生成字節(jié)代碼,減輕運行時的解釋工作。另一方面,有些Java運行環(huán)境采用Just-In-Time(JIT)編譯器將字節(jié)代碼編譯成機器碼直接運行,這種運行環(huán)境對于重復(fù)執(zhí)行的服務(wù)器端軟件特別有效,可以達到C語言的速度。⑤安全:J</p><p> Java安裝配置:各平臺安裝程序可以到SUN的網(wǎng)站上下載,在安裝完成后應(yīng)該進行配置,通常集成開發(fā)環(huán)境
25、(IDE)自帶JDK或進行了自動配置,如果我們通過控制臺編譯或運行Java程序則必須手動配置。</p><p> JDK: 是Java開發(fā)工具包(J2SE Software Development Kit)的縮寫,用Java語言編寫applet小程序和應(yīng)用程序的軟件開發(fā)環(huán)境,Java開發(fā)者應(yīng)該安裝JDK,并且通常JDK中已包含一個JRE拷貝。下面是JDK里一些文件的說明。</p><p>
26、; bin:java常用開發(fā)工具目錄,例如javac,java,jar等工具。</p><p> demo: sun提供的一些用于java開發(fā)的示范例子,如有關(guān)applets,jfc,plugin等。</p><p> include: Java提供用于c/c++調(diào)用的.h文件。</p><p> jre: 對應(yīng)版本的java運行環(huán)境文件。</p>
27、;<p> sample: java案例。</p><p> lib: java類庫目錄。</p><p> JRE: 是Java運行環(huán)境 (Java Runtime Enviroment) 的縮寫。它基本上就和Java虛擬機是同一個概念,運行Java程序的應(yīng)該安裝JRE。</p><p> Windows環(huán)境變量:應(yīng)設(shè)置的環(huán)境變量包括:JAV
28、A_HOME, PATH, CLASSPATH。</p><p> 假設(shè)J2DK安裝在“C:\Program Files\Java”,環(huán)境變量可設(shè)置為:</p><p> PATH = C:\Program Files\Java\jdk1.6.0_20\bin;</p><p> CLASSPATH=.;C:\ProgramFiles\Java\jdk1.6.
29、0_20\lib\tools.jar;C:\Program Files\Java\jdk1.6.0_20\jre\lib\rt.jar 。</p><p> 2.2 Eclipse集成平臺介紹</p><p> 2.2.1 Eclipse的概述</p><p> Eclipse是IBM花巨資開發(fā)的IDE集成開發(fā)環(huán)境(Integrated Development
30、 Environment)。其前身是IBM的Visual Age for Java(VA4J)。Eclipse是一個開放源代碼的、基于Java的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境是可擴展的體系結(jié)構(gòu),可以集成不同軟件開發(fā)供應(yīng)商開發(fā)的產(chǎn)品,將他們開發(fā)的工具和組件加入到Eclipse平臺中。另外Eclipse還附帶了一個標準的插件集,包括Java開發(fā)工具(Java Development To
31、ols,JDT)。</p><p> 2.2.2 Eclipse的安裝、設(shè)置與啟動</p><p> Eclipse的安裝非常簡單,僅需對下載后的壓縮文件進行解壓縮即可完成操作。</p><p> 安裝Eclipse開發(fā)工具</p><p> 可以到官網(wǎng)網(wǎng)站www.eclipse.org中下載3.2.1版Eclipse開發(fā)工具。<
32、;/p><p> 對下載名稱為eclipse-SDK-3.2.1-win32.zip的Eclipse軟件進行解壓縮。</p><p> 為了便于管理,將解壓縮后的eclipse文件夾剪切到D\Program Files文件夾中。此時如果運行D\Program Files\eclipse\里的eclipse.exe可執(zhí)行文件,便可啟動英文版的Eclipse開發(fā)工具。</p>&
33、lt;p> Eclipse的國際化</p><p> 完成Eclipse的安裝后,從初學(xué)者的角度考慮,如果開發(fā)工具是中文版的,則更適合我們的語言習(xí)慣,在學(xué)習(xí)和使用的過程中回輕松很多,另外一點就是可以方便地查閱中文教程和幫助信息。為此可以到Eclipse網(wǎng)站上下載多國語言包,從而實現(xiàn)Eclipse操作界面的國際化,進而用更適合我們學(xué)習(xí)的中文語言來顯示Eclipse程序界面。</p><
34、p> 因為我們用中文的,所以下面就介紹一下使Eclipse操作界面漢化的具體步驟如下。</p><p> (1) 到Eclipse官方網(wǎng)站下載與Eclipse相匹配的中文語言包。與上文所安裝的eclipse-SDK-3.2.1版本相匹配的語言包BabelLanguagePack-eclipse-zh_3.4.0.v20090620043401.zip。</p><p> (2)
35、 對下載名稱為 BabelLanguagePack-eclipse-zh_3.4.0.zip 軟件進行解壓。</p><p> ?。?) 解壓縮后包含一個eclipse文件夾,該文件夾中包含有features和plugins兩個文件夾。</p><p> ?。?) 將features和plugins兩個文件夾復(fù)制到所安裝的eclipse根目錄中,即D\Program Files\ecli
36、pse文件夾中,替換其中對應(yīng)的文件夾。</p><p> (5) 這樣即可實現(xiàn)Eclipse的中文語言操作界面。</p><p> 3. 啟動Eclipse</p><p> 完成了Eclipse多國語言包的配置,接下來可以啟動Eclipse。Eclipse的啟動很簡單,直接在Eclipse的安裝文件夾中運行eclipse.exe文件即可。具體步驟如下。<
37、;/p><p> 運行D\Program Files\eclipse\eclipse.exe文件。</p><p> Eclipse啟動后,在彈出的【工作空間啟動程序】對話框的【工作空間】文本框中輸入“D:\testdemo”,然后單擊【確定】按鈕。</p><p> 單擊【確定】按鈕,系統(tǒng)將出現(xiàn)Eclipse的歡迎界面,其中包含【概述】、【新增內(nèi)容】、【樣本】、
38、【教程】以及工作臺相關(guān)按鈕和菜單欄等。</p><p> 第三章 五子棋程序的介紹與規(guī)劃</p><p> 3.1軟件的基本功能</p><p> 該五子棋游戲的棋盤是一個十九行十九列的五子棋棋盤,縱橫線路為淺色,構(gòu)成361個交叉點。棋盤的正中為“天元”,周圍對稱的4點為“星位”。黑子181枚,白子180枚,共361枚棋子。五子棋采用簡易的規(guī)則,在對局開始時,
39、先由執(zhí)黑棋的一方將一枚棋子落在天元點上,然后由執(zhí)白棋一方在黑棋的周圍交叉點上下子。在棋盤上面在對應(yīng)位置通過點擊鼠標左鍵下子,棋盤上將在相應(yīng)的位置上顯示棋子,并且棋子在橫縱交點上??梢宰詣优袛嘤螒蚴欠窠Y(jié)束,是否黑方或者是白方已經(jīng)勝利,并且在文本框里顯示信息來提示玩家。在游戲棋盤上方會有一個游戲信息,這個游戲信息是用來提示當前是黑白雙方的哪一方下子,玩家可以根據(jù)這個提示來相應(yīng)的下棋,而不會導(dǎo)致不清楚輪到哪一方下棋。當然連接服務(wù)器的客戶可以在
40、任何時候進行聊天,可以和所有人一起聊,也可以和某個單獨的人聊天。在客戶可以創(chuàng)建游戲,加入游戲,放棄游戲,關(guān)閉游戲界面,以及聊天功能。</p><p><b> 3.2開發(fā)運行環(huán)境</b></p><p> 中心處理器:雙核1.6GHZ;</p><p><b> 內(nèi)存:2G;</b></p><p
41、><b> 硬盤:250G;</b></p><p> 操作系統(tǒng):WIN7;</p><p> 開發(fā)工具:Eclipse;</p><p> 編程語言:JAVA。</p><p> 3.3軟件的實現(xiàn)目的</p><p> 五子棋游戲程序所要實現(xiàn)的目的是讓我們可以在電腦上下棋,而不
42、需要去買,可以隨時玩,方便快捷。而且能更好的推廣五子棋于世界各地,此軟件也在于提供給愛好五子棋的人,也吸引更多的人喜歡上五子棋,也具有很大很大的商業(yè)價值。使五子棋游戲程序在以后的制作中功能越來越強大,外觀越來越好看。當然我現(xiàn)在做的是雙人網(wǎng)絡(luò)五子棋,為以后實現(xiàn)人機對戰(zhàn)打基礎(chǔ),現(xiàn)在隨著智能手機的普及,我們可以將這些游戲裝入手機,這樣就能隨時隨地的玩五子棋了。</p><p> 第四章 系統(tǒng)功能分析與算法分析<
43、/p><p><b> 4.1 系統(tǒng)功能</b></p><p> 網(wǎng)絡(luò)對戰(zhàn)主要是基于TCP/IP的網(wǎng)絡(luò)協(xié)議,采用服務(wù)器-客戶端的網(wǎng)絡(luò)架構(gòu)模式,允許網(wǎng)絡(luò)上的多臺機器(可能是兩臺機器)同時運行,一臺用作服務(wù)器,始終處理網(wǎng)絡(luò)上要求它進行服務(wù)的請求。如果有機器請求與它進行連接,用作服務(wù)器的機器接受之后就可以進行相互之間的通信。使用Socket進行編程,通過事件監(jiān)聽器,落子的
44、坐標值,通過流操作,將棋子的坐標發(fā)送過去,然后進行雙方棋盤的更新。然后,再根據(jù)贏的條件判定雙方的勝負。</p><p><b> 4.2 算法分析</b></p><p> 在程序中數(shù)據(jù)傳輸主要采用Socket套接字進行數(shù)據(jù)傳輸。</p><p> 在程序中用到的算法主要是對五子棋的判斷輸贏:在橫、豎、左斜、右斜任何一個方向一方連子不小于
45、5個即可獲勝。判斷的方法很直接,先判斷棋子的顏色,再逐個方向去判斷,在每個方向進行判定時又分為正方向和負方向,對每一個方向的判斷都很類似,下面我以圖形結(jié)合文字描述一個方向(豎直方向)的:</p><p> 首先如圖1,加入我們剛點擊鼠標下的是黑子。</p><p><b> 圖1</b></p><p><b> 第五章 系統(tǒng)設(shè)
46、計</b></p><p> 本章主要介紹了本系統(tǒng)各功能模塊的設(shè)計思路,詳細的分析了本系統(tǒng)的功能。</p><p> 5.1 詳細功能分析</p><p><b> 系統(tǒng)的程序流程圖:</b></p><p> 基于客戶機/服務(wù)器的Socket通信模型如下圖所示:</p><p&g
47、t;<b> 詳細功能:</b></p><p> 1.用戶可以創(chuàng)建游戲,加入游戲,放棄游戲。</p><p><b> 2.聊天功能</b></p><p> 聊天功能是建立一個聊天的界面,添加到游戲界面中,在網(wǎng)絡(luò)對弈時,通過Socket進行連接,先從界面上讀取用戶所寫的話,在通過流操作,將話發(fā)送給對方,然后對方
48、通過Socket接收到,然后讀出話來,同時更新聊天的面板,反之,也是一樣進行。</p><p><b> 3.網(wǎng)絡(luò)對戰(zhàn)</b></p><p> 需要編寫一個生成網(wǎng)絡(luò)對戰(zhàn)的棋盤類。其次還需要一個網(wǎng)絡(luò)對弈的線程類。網(wǎng)絡(luò)對戰(zhàn)主要是同過Socket進行連接。編寫一個具有Socket的客戶端類,在該類中進行相關(guān)的流操作。網(wǎng)絡(luò)對戰(zhàn)開始時,調(diào)用線程類,線程類再調(diào)用客戶端類,然
49、后就可以連接起來了。在連接時,注意判斷哪個玩家創(chuàng)建了游戲,哪個玩家加入游戲。</p><p><b> 5.2 設(shè)計思路</b></p><p> 網(wǎng)絡(luò)對戰(zhàn)設(shè)計,網(wǎng)絡(luò)對戰(zhàn)是使用socket進行編程的,通過socket,可以將倆臺不同的計算機連接起來。當雙方進行對弈時,需要同時更新雙方的棋盤??梢酝ㄟ^流操作,將棋子的坐標發(fā)送給對方,然后通過線程操作,更新雙方的棋盤。
50、</p><p><b> 設(shè)計思路:</b></p><p> 第一步,客戶端連接服務(wù)器。</p><p> 第二步,其中有客戶端創(chuàng)建游戲。</p><p> 第三步,另外等待的客戶端可以連接游戲,如果連接成功則開始游戲,由創(chuàng)建游戲的一方寫下黑子,如果連接不成功可以試著連接其他客戶端。</p>
51、<p> 第四步,正在游戲的雙方我下一顆棋進行一次判斷,如果某個客戶端獲勝則開始下一局,如果不想繼續(xù)游戲可以點擊放棄游戲或者直接關(guān)閉游戲見面。</p><p> 第五步,連接到服務(wù)器的客戶端可以相互聊天,可以同時和所有人聊天也可以和某個客戶端聊天。</p><p> 第六章 系統(tǒng)的具體實現(xiàn)</p><p> 本章主要介紹了本系統(tǒng)的各個功能的實現(xiàn)以及
52、部分核心代碼。</p><p><b> 6.1 主界面</b></p><p><b> 服務(wù)器端的主界面</b></p><p><b> 客戶端的主界面</b></p><p> 主界面主要是集合了五個面板,分別是:控制面板(controlPad.java)、游戲
53、面板(chessThread.java)、輸入面板(inputPad.java)、用戶面板(userPad.java)、聊天顯示面板(chatPad.java)。</p><p> 主界面實現(xiàn)如圖所示:</p><p> 第七章五子棋的功能演示</p><p><b> 下棋功能:</b></p><p> 首先
54、我們運行客戶端以后,我們可以連接主機、放棄游戲,但是不能創(chuàng)建游戲、加入游戲、放棄游戲。當我們在服務(wù)器IP后的文本框輸入服務(wù)器的IP時候點擊連接主機,這時運行的結(jié)果如下圖1</p><p><b> 聊天功能:</b></p><p><b> 結(jié) 論</b></p><p> 本系統(tǒng)主要研究了單機游戲,網(wǎng)絡(luò)對戰(zhàn),
55、人機對戰(zhàn)三個方面,單機游戲主要是靠線程的操作,網(wǎng)絡(luò)對戰(zhàn)需要對Socket編程要很好的理解,線程也是比不可少的,人機對戰(zhàn)需要編寫人工智能算法,同時。也需要對Swing要有很深的理解。</p><p> 在實現(xiàn)本系統(tǒng)過程中,碰到以下問題:一 Swing界面的排版問題,二 Socket編程時的流操作,三 人工智能算法的編寫。為了解決以上的問題,人工智能算法方面,我主要參考網(wǎng)絡(luò)方面的一些內(nèi)容,Swing界面的排版以及流
56、操作主要通過學(xué)習(xí)《Java編程思想》以及上網(wǎng)求幫助進行了解決。</p><p> 通過對五子棋游戲的編寫,使自己對java語言有了更深的了解。一個主類通過接口調(diào)用其他類,從而來完成一個完整程序的編寫外。更加熟悉在MyEclipse集成環(huán)境下對Java程序的編寫。</p><p> 同時,程序在編寫完畢之后還有很多地方需要完善。例如:可以添加菜單來控制各項功能;也可以添加音樂;也可以把游
57、戲改成交互式游戲,用戶可以自己自主的暫停,可以悔棋??梢赃M行視頻對戰(zhàn),同時對戰(zhàn)時,還可以進行語音聊天,支持一些下載功能等等。</p><p><b> 致 謝</b></p><p> 本文是在老師精心指導(dǎo)和大力支持下完成的。老師以其嚴謹求實的治學(xué)態(tài)度、崇高的敬業(yè)精神、兢兢業(yè)業(yè)、孜孜以求的工作作風對我產(chǎn)生重要影響。他淵博的知識、開闊的視野和敏銳的思維給了我深深
58、的啟迪。同時,在此次畢業(yè)設(shè)計過程中我也學(xué)到了許多了關(guān)于計算機方面的知識,編程能力有了很大的提高。 </p><p> 另外,還要感謝同學(xué)對我的無私幫助,使我得以順利完成論文。最后,再次對關(guān)心、幫助我的老師和同學(xué)表示衷心地感謝。</p><p><b> 參考文獻</b></p><p> [1] (英) Quentin Charatan,
59、 Aaron Kans Java大學(xué)教程 清華大學(xué)出版社,2008年09月第1版</p><p> [2]聶哲主編. Java面向?qū)ο蟪绦蛟O(shè)計.北京:高等教育出版社,2008年11月第2版</p><p> [3] 榮欽科技編著. Java 2游戲設(shè)計.北京:清華大學(xué)出版社,2004年11月第一版 </p><p> [4]張海藩編著
60、軟件工程導(dǎo)論 北京:清華大學(xué)出版社,2008年2月第5版</p><p> [5](美)Bruce Eckel著 陳昊鵬 譯 Java編程思想,機械工業(yè)出版社, 2007年第四版</p><p> [6]朱福喜 黃昊 編著 Java項目開發(fā)與畢業(yè)設(shè)計指導(dǎo),清華大學(xué)出版社,2008年6月第一版 </p><p> [7] 印昊 JAVA與面向?qū)ο蟪绦蛟O(shè)計 高等教
61、育出版社 ,2004年4月</p><p> [8] 李尊朝 JAVA語言程序設(shè)計 中國鐵道出版社;2004年9月</p><p> [9] 袁海燕.JAVA應(yīng)用程序設(shè)計100例 人民郵電出版社,2005年5月.</p><p> [10] 薛為民. JAVA應(yīng)用教程 清華、北交大出版社 ,2005年9月</p><p> [1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 五子棋游戲設(shè)計畢業(yè)論文
- 畢業(yè)論文——五子棋游戲設(shè)計
- 基于java的五子棋游戲的設(shè)計——畢業(yè)論文
- 畢業(yè)論文---網(wǎng)絡(luò)五子棋游戲設(shè)計
- 五子棋畢業(yè)論文
- 基于java五子棋游戲開發(fā)
- java五子棋畢業(yè)設(shè)計論文
- 基于java的五子棋游戲設(shè)計
- java課程設(shè)計--五子棋游戲
- 五子棋畢業(yè)論文-html開發(fā)五子棋的原型設(shè)計
- java課程設(shè)計-五子棋游戲
- 基于java的五子棋小游戲
- java五子棋畢業(yè)設(shè)計--java五子棋對弈程序的設(shè)計與實現(xiàn)
- 五子棋游戲的設(shè)計與實現(xiàn)【畢業(yè)論文】
- 基于Java的五子棋游戲開題.docx
- 五子棋對戰(zhàn)游戲
- java五子棋實習(xí)報告
- 五子棋游戲畢業(yè)設(shè)計
- 基于java的五子棋游戲的設(shè)計
- 基于android的五子棋游戲的設(shè)計畢業(yè)論文
評論
0/150
提交評論