java五子棋实训训心得,java五子棋实习报告
java五子棋實(shí)習(xí)報(bào)告
Java 程序設(shè)計(jì)基礎(chǔ) 實(shí)習(xí)報(bào)告 課程名稱(chēng) Java 程序設(shè)計(jì)基礎(chǔ) 實(shí)習(xí)題目 java 五子棋 專(zhuān) 業(yè) 班 級(jí) 學(xué) 號(hào) 學(xué)生姓名 指導(dǎo)教師 Java 實(shí)習(xí)報(bào)告 一、一、J JAVAAVA 技術(shù)介紹技術(shù)介紹 Java 技術(shù)是一門(mén)編程語(yǔ)言,也是一個(gè)平臺(tái),它基于 Java 虛擬機(jī)技術(shù), 借助這個(gè)東西建立了跨平臺(tái)的優(yōu)勢(shì)。 Java 編程語(yǔ)言與眾不同之處在于Java 程序既是編譯型的(轉(zhuǎn)換為一 種稱(chēng)為 Java 字節(jié)碼的中間語(yǔ)言),又是解釋型的(JVM 對(duì)字節(jié)碼進(jìn)行解析 和運(yùn)行)。編譯只進(jìn)行一次,而解釋在每次運(yùn)行程序時(shí)都會(huì)進(jìn)行。編譯后 的字節(jié)碼采用一種針對(duì) JVM 優(yōu)化過(guò)的機(jī)器碼形式;解釋器是 JVM 的實(shí)現(xiàn)。 二、二、摘要摘要 五子棋作為一個(gè)棋類(lèi)競(jìng)技運(yùn)動(dòng),在民間十分流行,本課題主要完成了 五子棋人機(jī)對(duì)戰(zhàn)和玩家之間聯(lián)網(wǎng)對(duì)戰(zhàn) 2 個(gè)功能。網(wǎng)絡(luò)連接部分為 Socket 編 程應(yīng)用,客戶端和服務(wù)器端的交互用 Class Message 定義,有很好的可擴(kuò) 展性,客戶端負(fù)責(zé)界面維護(hù)和收集用戶輸入的信息,及錯(cuò)誤處理。服務(wù)器 維護(hù)在線用戶的基本信息和任意兩個(gè)對(duì)戰(zhàn)用戶的棋盤(pán)信息,動(dòng)態(tài)維護(hù)用戶 列表。在人機(jī)對(duì)弈中通過(guò)深度搜索和估值模塊,來(lái)提高電腦棋手的智能。 分析估值模塊中的影響精準(zhǔn)性的幾個(gè)要素,以及提出若干提高精準(zhǔn)性的辦 法,以及對(duì)它們搜索的節(jié)點(diǎn)數(shù)進(jìn)行比較,在這些算法的基礎(chǔ)上分析一些提 高電腦 AI 方案,如遞歸算法、電腦學(xué)習(xí)等。算法的研究有助于理解程序結(jié) 構(gòu),增強(qiáng)邏輯思維能力,在其他人工智能方面也有很大的參考作用。 三、課題分析三、課題分析與設(shè)計(jì)與設(shè)計(jì) 1 鍵盤(pán)上事先設(shè)定 8 個(gè)按鍵,分作兩組,每組四個(gè),分別代表兩個(gè)人 用來(lái)控制棋子的上下左右鍵。 2 繪制棋盤(pán), 15 條橫線, 15 條豎線, 在直線交點(diǎn)處下棋子 (實(shí)心圓形) 。 3 黑子先行,黑白交替下子,在棋盤(pán)上設(shè)定一個(gè)與棋盤(pán)格大小邊長(zhǎng)相 等的正方形,初始狀態(tài),正方形的中心位于期盼的中心點(diǎn)。當(dāng)一方 欲走棋的時(shí)候,應(yīng)用四個(gè)按鍵來(lái)控制所要下棋的位置,每按一次按 鍵,正方形都要向相應(yīng)方向移動(dòng)一個(gè)格,并且讓喇叭發(fā)出某種聲音, 將要移出邊界時(shí),發(fā)出另一種警告聲音并不讓其移出邊界。當(dāng)按下 回車(chē)鍵時(shí),應(yīng)在正方形所在位置放下一個(gè)棋子,然后此組按鍵不能 操作,換另一個(gè)人下棋,用另一組按鍵,規(guī)則同前。 4 當(dāng)任何一方有五個(gè)棋子沿著橫,豎,斜連在一起時(shí),系統(tǒng)自動(dòng)判斷 贏棋,并顯示黑方或白方勝利。棋局結(jié)束后,任何一方均不能繼續(xù) 操作。 四、四、流程圖流程圖 五、效果圖五、效果圖 五、五、詳詳細(xì)細(xì)代碼代碼設(shè)計(jì)設(shè)計(jì) 導(dǎo)入包導(dǎo)入包 import java.applet.*; import java.applet.*; import java.awt.*; import java.awt.*; import java.awt.event.*; import java.awt.event.*; 構(gòu)造構(gòu)造 appletapplet 程序程序 public class public class 五子棋五子棋 extends Applet implements extends Applet implements ActionListener,MouseListener ActionListener,MouseListener StrinString str“g str“五子棋游戲五子棋游戲“; “; Dimension currentPosnew Dimension; Dimension currentPosnew Dimension; 實(shí)例化實(shí)例化 像素像素 int zuobiaonew int1915; int zuobiaonew int1915; 聲明一個(gè)聲明一個(gè) 19*1519*15 的棋盤(pán)的棋盤(pán) int x20,y20; int x20,y20; boolean unfirstpaintfalse; boolean unfirstpaintfalse; boolean onefalse; boolean onefalse; publicpublic void i
總結(jié)
以上是生活随笔為你收集整理的java五子棋实训训心得,java五子棋实习报告的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 改变mysql的菜单栏的颜色_导航条——
- 下一篇: ida导入jni头文件_IDA动态调试无