




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Java課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)名稱馬板游戲指導(dǎo)教師XXX轉(zhuǎn)業(yè)新率和計(jì)算科學(xué)學(xué)生成員XX(20084390116)XX(20084390124)XX(20084390128)完成日期:2011年6月15日馬板游戲1.課程設(shè)計(jì)的目的Java語言是當(dāng)今廣泛使用的網(wǎng)絡(luò)編程語言,包括面向?qū)ο?、跨平臺(tái)和分布式應(yīng)用程序。面向?qū)ο蟮拈_發(fā)方法是當(dāng)今世界上使用最廣泛的開發(fā)方法,不僅具有自然的意義,而且有助于軟件的維護(hù)和繼承。為了進(jìn)一步鞏固課堂上所學(xué)的知識(shí),深入了解Java語言的重要概念和面向?qū)ο蟮奶匦?,鍛煉學(xué)生熟練應(yīng)用面向?qū)ο蟮乃枷牒驮O(shè)計(jì)方法解決實(shí)際問題的能力,我們開設(shè)了Java編程課程設(shè)計(jì)。通過此次課程設(shè)計(jì),鞏固
2、了學(xué)習(xí)的Java語言的基礎(chǔ),提高了Java語言編輯基本功,掌握了JCreator開發(fā)工具的使用,擴(kuò)大了常用類庫的應(yīng)用。將通過本課程和手段掌握的課程和相關(guān)知識(shí)整合在一起,充分掌握J(rèn)ava語言的編程思想和面向?qū)ο蟮木幊谭椒?,為以后從事?shí)際工作奠定了堅(jiān)實(shí)的基礎(chǔ)。圖像選擇(包括數(shù)字游戲)、難度級(jí)別選擇(初級(jí)和高級(jí))、系統(tǒng)根據(jù)選擇圖片和難度級(jí)別自動(dòng)劃分塊,初始化游戲時(shí),最右下方的片段丟失和其馀立方體的原始順序混亂,用鼠標(biāo)移動(dòng)立方體,這樣才能準(zhǔn)確地按照原始順序排列。這個(gè)游戲可以在拼圖中同時(shí)顯示原始圖片,以便用戶參考原始圖片進(jìn)行移動(dòng)恢復(fù)。您還需要成績(jī)單功能,以便在游戲結(jié)束時(shí)記錄用戶名、經(jīng)過的時(shí)間,查看相應(yīng)級(jí)
3、別的英雄列表并顯示成績(jī)排名。而且在移動(dòng)模塊的過程中,有不太無聊的短音樂播放。2.演示設(shè)計(jì)方案2.1 .整體設(shè)計(jì)拼圖游戲系統(tǒng)總共包含10個(gè)Java源文件。這是一款功能齊全的買盤游戲,直接不用手切畫加載是最重要的。相反,使用類方法將圖片剪切并加載到內(nèi)存中,以方便用戶。程序最后將游戲記錄保存為test格式的文件。此雜志游戲集成了很多元素,可以保存為照片剪切、游戲拼圖、游戲成功時(shí)的游戲時(shí)間戳和測(cè)試文檔格式。在拼拼圖之前,先剪下圖片,然后在拼圖按鈕上顯示。您可以在拼圖結(jié)束時(shí)顯示游戲成績(jī)和記錄的存檔。馬板游戲(1)功能模塊圖圖1:移動(dòng)有音樂播放查看英雄列表成績(jī)單選擇數(shù)字或圖像操作選擇背景圖片選擇難度級(jí)別圖
4、1系統(tǒng)功能(2)類之間的關(guān)系如圖2:JMenu波zzlepadJbuttonJRadioButtonper zzle區(qū)塊積分Handlemove圖像HandleimageVerifysuccess記錄Showrecorddialog圖2類之間的關(guān)系(3)java源文件的功能如表1所示。表1文件功能序號(hào)文件名主要功能1PuzzleGame.java創(chuàng)建包含主方法的立方體游戲的主窗口。程序從此類開始運(yùn)行2Pazzlepad.java表示“魔術(shù)板”,是PuzzleGame類中最重要的成員變量3Block.javaJtextField的子類,用于表示“魔術(shù)板”的“長(zhǎng)方體”。4Point.java負(fù)責(zé)創(chuàng)
5、建位置的對(duì)象,用于確定“長(zhǎng)方體”和“立方體”的位置5Handledate.java負(fù)責(zé)將一個(gè)圖像分成多個(gè)小圖像6HandleMove.java負(fù)責(zé)處理鼠標(biāo)事件7VerifySuccess.java您將確保用戶已按照所需的方式成功排列模板的框。8Record.java負(fù)責(zé)將用戶的姓名和成績(jī)保存在相應(yīng)級(jí)別的文件中。9People.javaShowRecordDialog對(duì)象封裝用戶的名稱和分?jǐn)?shù),以便可以按分?jǐn)?shù)對(duì)用戶進(jìn)行排序。10ShowRecordDialog.java用戶單擊查看圖表時(shí)。負(fù)責(zé)可視化用戶的成績(jī)。2.2 .詳細(xì)設(shè)計(jì)2.2.1主類PuzzleGame成員變量如表2所示。表2類Puzzl
6、eGame中的成員變量名字成員變量說明名字成員變量說明Puzzlepad用來描述魔法板新形象選擇新圖像酒吧用于添加菜單DefaultImage使用默認(rèn)圖像大菜單選擇標(biāo)高DigitPlay數(shù)碼游戲選擇圖像選擇圖像播放圖像圖像游戲OneGrade、初學(xué)者StartButton開始二樓高級(jí)圖像Image聲明對(duì)象工具負(fù)責(zé)創(chuàng)建Image對(duì)象(2)方法見表3。表3 PuzzleGmae方法方法名稱功能PuzzleGame()負(fù)責(zé)完成窗口初始化任務(wù)ActionPerformed(Actionevent)PuzzleGame類實(shí)現(xiàn)ActionListener接口的方法Main()運(yùn)行程序的門戶方法(3)有關(guān)源
7、代碼,請(qǐng)參見文件PuzzleGame.java2.2.2.Pazzlepad類成員變量如表4所示。表4類Puzzlepad的成員變量名字成員變量說明名字成員變量說明積分Point類型的二維數(shù)組,用于確定模板中長(zhǎng)方體的位置HandleMove負(fù)責(zé)處理Block對(duì)象中的鼠標(biāo)事件區(qū)塊Block類型的二維陣列,代表立方結(jié)構(gòu)中的方塊HandleImage負(fù)責(zé)將一個(gè)圖像分成多個(gè)小圖像Distance(int類型)Point對(duì)象根據(jù)distance的值進(jìn)行初始化,以確定point對(duì)象之間的距離VerifySuccess確保用戶根據(jù)需要成功排列了長(zhǎng)方體灰色的此值表示magic plate的級(jí)別,默認(rèn)值為1圖像
8、Image聲明的圖像對(duì)象m,n值分別是二維陣列point和block的行數(shù)和列數(shù)。默認(rèn)值為3工具Toolkit物件,建立宣告image的影像物件:image(2)方法見表5。表5 Puzzlepad方法方法名稱功能Puzzlepad()負(fù)責(zé)創(chuàng)建Puzzlepad對(duì)象GetHandleMove()返回HandleMove對(duì)象Setmage(圖像)設(shè)定Image物件SetGrade(int)設(shè)置模仿的級(jí)別GetGrade()返回到GradeNeedInit()完成Block和Point物件的建立,并完成其他物件的初始化SetIsDigitplay()將立方設(shè)置為數(shù)字回放SetIsImageplay
9、()將立方設(shè)置為圖像回放PaintComponent()在立方體的右側(cè)繪制立方體使用的圖像。(3)有關(guān)源代碼,請(qǐng)參見文件Puzzlepad.java2.2.3.Block類別成員變量如表6所示。表6類Block中的成員變量名字成員變量說明積分確定Block對(duì)象在Puzzlepad中創(chuàng)建的magic plate容器中的位置物件確定Block對(duì)象中顯示的數(shù)字或圖像(2)方法見表7。表7 Block方法方法名稱功能SetAtPoint(Point)設(shè)定自己的點(diǎn)會(huì)設(shè)定point物件的參考GetAtPoint()返回Point對(duì)象的引用的 point Setobject(對(duì)象)設(shè)置自己的成員對(duì)象油漆元件
10、(graphics)繪制Image物件(3)有關(guān)源代碼,請(qǐng)參閱Block.java文件2.2.4.Point類成員變量如表8所示。表8類Point中的成員變量名字成員變量說明x,y基于int的兩個(gè)數(shù)據(jù),表示容器坐標(biāo)的x軸坐標(biāo)和y軸坐標(biāo)值HaveBlock布爾值數(shù)據(jù):如果Block對(duì)象位于Point對(duì)象中,則為ture否則為false區(qū)塊用于存儲(chǔ)對(duì)Block對(duì)象的參照,指示Block對(duì)象當(dāng)前位于Point對(duì)象中(2)方法見表9。表9類Point方法方法名稱功能Point(int,int)用于創(chuàng)建Point對(duì)象的配置方法IsHaveBlock()boolean數(shù)據(jù),如果當(dāng)前Point對(duì)象返回Blo
11、ck對(duì)象為ture,則返回falseSetHaveBlock (boolean)基于參數(shù)的值設(shè)置當(dāng)前Point對(duì)象是否包含Block對(duì)象GetX()、getY()返回x和y軸坐標(biāo)Epuals(TowerPoint)檢查當(dāng)前Point對(duì)象是否與參數(shù)指定的Point對(duì)象相同Set block將指定為參數(shù)的Block對(duì)象放置在當(dāng)前Point對(duì)象中GetBlock()返回當(dāng)前Point對(duì)象的Block對(duì)象(3)有關(guān)源代碼,請(qǐng)參見文件Point.java2.2.5.HandleImage類成員變量如表10所示。表10類HandleImage中的成員變量名字成員變量說明ImageWidth,imageHe
12、ight兩個(gè)int數(shù)據(jù),每個(gè)數(shù)據(jù)存儲(chǔ)圖像的寬度和高度工具Toolkit物件,用于匯入Image物件(2)方法見表11。表11類HandleImage方法方法名稱功能HandleImage()完成HandleImage對(duì)象初始化的配置方法GetImages(Image,int,int)將參數(shù)指定的Image圖像分解為幾個(gè)較小的圖像,將圖像存儲(chǔ)在Image數(shù)組中,然后返回到該數(shù)組中。(3)有關(guān)源代碼,請(qǐng)參閱HandleImage.java文件2.2.6.HandleMove類成員變量如表12所示。表12類HandleMove的成員變量名字成員變量說明積分point類型的二維數(shù)組,用于存儲(chǔ)對(duì)Puzz
13、lepad magic plate容器中Point數(shù)組的引用SpendTime用于記錄用戶玩魔術(shù)板游戲所用的時(shí)間。RecordTime計(jì)時(shí)器演出時(shí)間在JTexField中創(chuàng)建的文本框,負(fù)責(zé)顯示時(shí)間VrifyVerifySuccess聲明中的對(duì)象,用于保存對(duì)PuzzlePad的工作表中的verifySuccess的引用(2)方法見表13。表13類HandleMove方法方法名稱功能HandleMove()建立HandleMove物件的組織方法SetPoint(Point)將對(duì)puzzlepad magic plate容器中point對(duì)象的引用傳遞到該對(duì)象的point,以便HandleMove移動(dòng)
14、Block對(duì)象SetVerifySuccess(VerifySuccess)如果將Puzzlepad magic board容器中verifySuccess對(duì)象的引用傳遞給該對(duì)象的verify,則verify對(duì)象將負(fù)責(zé)確定magic plate的Block對(duì)象是否根據(jù)需要成功對(duì)齊InitSpendTime()將SpendTime值設(shè)定為0MousePressed(KeyEvent)執(zhí)行滑鼠左鍵事件,以根據(jù)規(guī)則移動(dòng)Block物件Mouse released(鼠標(biāo)事件)確定用戶是否根據(jù)需要成功排列Block對(duì)象ActionPerformed(ActionEvent)顯示使用者目前的經(jīng)歷時(shí)間(3)有
15、關(guān)源代碼,請(qǐng)參閱HandleMove.java文件2.2.7.VerifySuccess類成員變量如表14所示。表14類VerifySuccess的成員變量名字成員變量說明積分point類型的二維數(shù)組,用于存儲(chǔ)對(duì)Puzzlepad magic plate容器中Point數(shù)組的引用物件儲(chǔ)存格可以儲(chǔ)存所有物件的Object陣列(2)方法見表15。表15類VerifySuccess方法方法名稱功能HandleMove()建立HandleMove物件的組織方法SetPoint(Point)將Puzzlepad magic plate容器中point對(duì)象的引用傳遞到該對(duì)象的point。SetPoint(Object)將Puzzlepad magic plate容器中Integer數(shù)組或Image數(shù)組的引用傳遞給該對(duì)象的objectIsSuccess()成功的isSuccess()方法返回ture,否則返回false(3)有關(guān)源代碼,請(qǐng)參閱VerifySuccess.java文件2.2.8.Record類別成員變量如表16所示。表16類記錄中的成員變量名字成員變量說明時(shí)間使用者的使用時(shí)間YourName用戶用于輸入名稱的文本框
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 徜徉生字教學(xué)課件
- 奶油蛋糕教學(xué)課件制作
- 觀察蝸牛教學(xué)課件
- 課件的教學(xué)類型
- 敬老院消防宣傳課件
- 教案教學(xué)課件制作
- 水平二跳繩教學(xué)課件
- 教育扶貧政策課件
- 旅游類公司開業(yè)活動(dòng)方案
- 旅游文化節(jié)活動(dòng)方案
- GB/T 45719-2025半導(dǎo)體器件金屬氧化物半導(dǎo)體(MOS)晶體管的熱載流子試驗(yàn)
- 寶媽日常心理護(hù)理
- 2024年安徽大學(xué)專職輔導(dǎo)員招聘筆試真題
- GB 9743-2024轎車輪胎
- 會(huì)計(jì)知識(shí)競(jìng)賽題庫附答案2021
- 廠房鋼筋混凝土地坪板工程施工方案
- 項(xiàng)目延期申請(qǐng)表(樣本)
- 固井工藝技術(shù)培訓(xùn)教學(xué)課件(77p)
- 入團(tuán)志愿書(2016版本)(可編輯打印標(biāo)準(zhǔn)A4) (1)
- 盤扣式腳手架模板與支撐架專項(xiàng)施工方案
- 消防器材購(gòu)銷合同2
評(píng)論
0/150
提交評(píng)論