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

正文內(nèi)容

五子棋手機(jī)網(wǎng)絡(luò)對戰(zhàn)游戲的設(shè)計(jì)與實(shí)現(xiàn)-閱讀頁

2025-06-06 17:17本頁面
  

【正文】 ew Cursor()。 setGameMode(INIT)。并且設(shè)置了模式。 switch(gameMode) { case INIT : id0 = id1 = 1。//初始化棋盤大小 ()。 case CONNECT : Thread cthread = new Thread() { public void run() { repaint()。 } else {loginGame()。 ()。 case TURN0 : (row, col)。 case TURN1 : (id0)。 } repaint()。 網(wǎng)絡(luò)連接類的實(shí)現(xiàn) 在 J2ME 中,專門提供了一個網(wǎng)絡(luò)連接框架 —— GCF。 GCF 是一組在 包中定義的接口。沿著層次結(jié)構(gòu)向下派生出提供更多功能的接口。 下 面來分析核心代碼: //打開連接 private String readPage(String url) throws IOException { StringBuffer result = new StringBuffer()。 InputStream is = null。 is = ()。 while ((ch = ()) != 1) { ((char)ch)。 if (c != null) ()。 在這個方法中,首先建立了一個連接,采用流來得到數(shù)據(jù),當(dāng)數(shù)據(jù)傳輸完畢后,關(guān)閉流,關(guān)閉連接。id=+id1+ amp。 } catch (IOException e) { } } }。 } public void receiveData(final int id0) { Thread thread = new Thread() { public void run() { receive(id0)。 ()。 當(dāng)程序運(yùn)行的時候, Application Management Software(應(yīng)用管理軟件 )首先初始化一個 MIDlet,然后調(diào)用它的 startApp()方法使得 MIDlet進(jìn)入 active狀態(tài),這條程序分支就是主線程,它執(zhí)行其他的方法后都會返回到這個分支上來繼續(xù)執(zhí)行。 在三星公司的無線開發(fā)包 WTK 中模擬一段網(wǎng)絡(luò)連接程序運(yùn)行時, WTK 會提示網(wǎng)絡(luò)連接工作可能會堵 塞用戶輸入,需要創(chuàng)建另外一個線程去進(jìn)行聯(lián)網(wǎng)操作。 五子棋獲勝算法 因?yàn)楸鞠到y(tǒng)模擬的重點(diǎn)是網(wǎng)絡(luò)連接,數(shù)據(jù)交互以及怎樣來初步實(shí)現(xiàn)一個簡單 第 16 頁 共 24頁 的手機(jī)網(wǎng)絡(luò)游戲,所以對于五子棋游戲的規(guī)則方面并沒有考慮太多,禁手等游戲規(guī)則都沒有考慮,而僅僅實(shí)現(xiàn)了五子棋的獲勝算法,這點(diǎn)是這次畢業(yè)設(shè)計(jì)的很大不足之處。x 11。y 11。 //檢查一行 if (x != 0 amp。 x != 1 amp。 x != 10 amp。 x != 11 amp。 stones[x][y] == stones[x2][y] amp。 stones[x][y] == stones[x1][y] amp。 stones[x][y] == stones[x+1][y] amp。 stones[x][y] == stones[x+2][y]) return stones[x][y]。amp。amp。amp。amp。amp。amp。amp。 //檢查右下方向一列 if (x != 0 amp。 x != 1 amp。 x != 10 amp。 x != 11 amp。 y != 0 amp。 y != 1 amp。 y != 10 amp。 y != 11 amp。 stones[x][y] == stones[x+2][y+2] amp。 stones[x][y] == stones[x+1][y+1] amp。 stones[x][y] == stones[x2][y2] amp。 stones[x][y] == stones[x1][y1]) return stones[x][y]。amp。amp。amp。amp。amp。amp。amp。amp。amp。amp。amp。 } } return 1。 6 服務(wù)器端程序的開發(fā) 數(shù)據(jù)庫系統(tǒng)是一個實(shí)際可運(yùn)行的存儲、維護(hù)和應(yīng)用數(shù)據(jù)的軟件系統(tǒng),是存儲介質(zhì)、處理對象和管理系統(tǒng)的集合體。其軟件主要包括操作系統(tǒng)、各種宿主語言、實(shí)用程序以及數(shù)據(jù)庫管理系統(tǒng)。這些數(shù)據(jù)為多個應(yīng)用服務(wù),獨(dú)立于具體的應(yīng)用程序。數(shù)據(jù)庫管理系統(tǒng)是一種系統(tǒng)軟件,它的主要功能是維護(hù)數(shù)據(jù)庫并有效地訪問數(shù)據(jù)庫中任意部分?jǐn)?shù)據(jù)。 在本系統(tǒng)中,只建立了一個表 users,用來存儲用戶身份信息。其中用戶名就是系統(tǒng)分配給各個 用戶的固定號碼,初始狀態(tài)下其密碼與其用戶名相同。 因?yàn)楸救耸堑谝淮尉帉懧?lián)網(wǎng)的手機(jī)游戲,各方面都處于初學(xué)摸索狀態(tài),并且這方面的資料在網(wǎng)上非常少,所以本系統(tǒng)后臺方面功能比較簡單,目前對數(shù)據(jù)庫的操作只有身份驗(yàn)證這一個功能模塊。 public class OmokServlet extends HttpServlet 下面來看 doGet 方法: 第 18 頁 共 24頁 public synchronized void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { String mand =getParameterValue(request, mand)。 //連接 if ((connect)) { ((idCount))。 idCount = (idCount 999) ? 0 : idCount+1。 String psw = getParameterValue(request, Psw)。 (psw)。+userid+39。 if(()) { String password = (password)。 result = (idCount)。 idCount = (idCount 999) ? 0 : idCount+1。 } 第 19 頁 共 24頁 } else { result=(1)。} }//斷開 else if ((disconnect)) { String id = getParameterValue(request, id)。 }//發(fā)送數(shù)據(jù) else if ((sendData)) { String id = getParameterValue(request, id)。 (id, data)。 if ((id)) { result = (String)(id)。 (result)。 ()??蛻舳嗽谶M(jìn)行登錄,身份驗(yàn)證的時候,狀態(tài)為 login,然后提交用戶名密碼,當(dāng)這 個 servlet 接收到信息后,首先查詢信息的狀態(tài),然后進(jìn)行相應(yīng)的處理,這次狀態(tài)為“ login”,所以提取用戶名密碼 進(jìn)行查詢,如果都匹配的話,返回分配給這個客戶端的號碼,以便以 第 20 頁 共 24頁 后傳輸信息用。身份驗(yàn)證成功的客戶端,以后在每次發(fā)送消息的時候都要附帶發(fā)送之前被分配的那個號碼,因?yàn)槭謾C(jī)是沒有 ip 地址的,并且本系統(tǒng)的傳輸協(xié)議為 連接,為了區(qū)分發(fā)送過來的信息的來源,就必須附加一個號碼,每次解吸信息前,先提取是哪個號碼發(fā)送來的信息,然后把信息放到 hashtable 中,然后等待與這個號碼相 匹配的另一個號碼發(fā)送請求來取走信息。 測試前的準(zhǔn)備工作 第一步:首先必須在 PC 上安裝 J2SE SDK 第二步:下載 SAMSUNG ,這個程序是三 星手機(jī)的軟件開發(fā)包,里面包含有很多種型號的手機(jī)模擬器,我們需要的就是這個模擬器。 Java 語言并沒有完全編譯成二進(jìn)制可執(zhí)行文件,編譯出的 .class 文件是一種介于源程序和二進(jìn)制之間的一 種 基于半解釋的字節(jié)碼,需要虛擬機(jī)來執(zhí)行。然而這樣會導(dǎo)致 .class 很容易被反編譯為源代碼,從而不能保護(hù)作者的知識成果。如果不加以施行有效的措施,將造成嚴(yán)重的后果?;煜鲗⒋a中的所有變量、函數(shù)、類的名稱變?yōu)楹喍痰挠⑽淖帜复枺绻狈ο鄳?yīng)的函數(shù)名指示和程序注釋,即使被反編譯,也將難以閱讀。由于以上介紹的減少變量、函數(shù)的命名長度的關(guān)系,編譯后也會從 .class 文件中減少這些冗余的信息。 打包具體過程 : 游戲文件打包實(shí)際上就是生成 jar、 jad 文件 。因?yàn)橛螒蛳到y(tǒng)的功能實(shí)現(xiàn)最終是通過界面體現(xiàn)出來的,所以我們下面的測試將游戲系統(tǒng)功能測試和界面測試結(jié)合起來進(jìn)行。界面采用統(tǒng)一的方格塊,看起來很單調(diào)。 游戲沒有時間控制模塊。 結(jié) 論 程序設(shè)計(jì)實(shí)現(xiàn)了手機(jī)上聯(lián)網(wǎng)游戲 的開發(fā) 以及后臺的實(shí)現(xiàn) ,具有一定的可玩性和復(fù) 雜性。 現(xiàn)在已經(jīng)做出的是游戲的 版本,實(shí)現(xiàn)了游戲的最基本功能,還有一些在游戲中應(yīng)有的功能沒有能實(shí)現(xiàn),離一個完全意義上的手機(jī)網(wǎng)絡(luò)游戲還有很大一段的距離: ,還沒有經(jīng)過真機(jī)調(diào)試; ; 參考文獻(xiàn) [1] 胡虛懷 ,楊志和 ,李煥 .J2ME移動設(shè)備程序設(shè)計(jì) [M].北京 :清華大學(xué)出版社 ,2020。 [3] 詹建飛 .J2ME開發(fā)精解 [M].北京 :電子工業(yè)出版社 ,2020。 [5] 微型爪哇人 .JAVA手機(jī)開發(fā) [M].北京 :中國鐵道出版社 ,2020。
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1