




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、Java課程設(shè)計實驗報告實驗名稱馬板游戲指導(dǎo)教師XXX轉(zhuǎn)業(yè)新率和計算科學(xué)學(xué)生成員XX(20084390116)XX(20084390124)XX(20084390128)完成日期:2011年6月15日馬板游戲1.課程設(shè)計的目的Java語言是當(dāng)今廣泛使用的網(wǎng)絡(luò)編程語言,包括面向?qū)ο?、跨平臺和分布式應(yīng)用程序。面向?qū)ο蟮拈_發(fā)方法是當(dāng)今世界上使用最廣泛的開發(fā)方法,不僅具有自然的意義,而且有助于軟件的維護和繼承。為了進一步鞏固課堂上所學(xué)的知識,深入了解Java語言的重要概念和面向?qū)ο蟮奶匦裕憻拰W(xué)生熟練應(yīng)用面向?qū)ο蟮乃枷牒驮O(shè)計方法解決實際問題的能力,我們開設(shè)了Java編程課程設(shè)計。通過此次課程設(shè)計,鞏固
2、了學(xué)習(xí)的Java語言的基礎(chǔ),提高了Java語言編輯基本功,掌握了JCreator開發(fā)工具的使用,擴大了常用類庫的應(yīng)用。將通過本課程和手段掌握的課程和相關(guān)知識整合在一起,充分掌握Java語言的編程思想和面向?qū)ο蟮木幊谭椒?,為以后從事實際工作奠定了堅實的基礎(chǔ)。圖像選擇(包括數(shù)字游戲)、難度級別選擇(初級和高級)、系統(tǒng)根據(jù)選擇圖片和難度級別自動劃分塊,初始化游戲時,最右下方的片段丟失和其馀立方體的原始順序混亂,用鼠標(biāo)移動立方體,這樣才能準(zhǔn)確地按照原始順序排列。這個游戲可以在拼圖中同時顯示原始圖片,以便用戶參考原始圖片進行移動恢復(fù)。您還需要成績單功能,以便在游戲結(jié)束時記錄用戶名、經(jīng)過的時間,查看相應(yīng)級
3、別的英雄列表并顯示成績排名。而且在移動模塊的過程中,有不太無聊的短音樂播放。2.演示設(shè)計方案2.1 .整體設(shè)計拼圖游戲系統(tǒng)總共包含10個Java源文件。這是一款功能齊全的買盤游戲,直接不用手切畫加載是最重要的。相反,使用類方法將圖片剪切并加載到內(nèi)存中,以方便用戶。程序最后將游戲記錄保存為test格式的文件。此雜志游戲集成了很多元素,可以保存為照片剪切、游戲拼圖、游戲成功時的游戲時間戳和測試文檔格式。在拼拼圖之前,先剪下圖片,然后在拼圖按鈕上顯示。您可以在拼圖結(jié)束時顯示游戲成績和記錄的存檔。馬板游戲(1)功能模塊圖圖1:移動有音樂播放查看英雄列表成績單選擇數(shù)字或圖像操作選擇背景圖片選擇難度級別圖
4、1系統(tǒng)功能(2)類之間的關(guān)系如圖2:JMenu波zzlepadJbuttonJRadioButtonper zzle區(qū)塊積分Handlemove圖像HandleimageVerifysuccess記錄Showrecorddialog圖2類之間的關(guān)系(3)java源文件的功能如表1所示。表1文件功能序號文件名主要功能1PuzzleGame.java創(chuàng)建包含主方法的立方體游戲的主窗口。程序從此類開始運行2Pazzlepad.java表示“魔術(shù)板”,是PuzzleGame類中最重要的成員變量3Block.javaJtextField的子類,用于表示“魔術(shù)板”的“長方體”。4Point.java負責(zé)創(chuàng)
5、建位置的對象,用于確定“長方體”和“立方體”的位置5Handledate.java負責(zé)將一個圖像分成多個小圖像6HandleMove.java負責(zé)處理鼠標(biāo)事件7VerifySuccess.java您將確保用戶已按照所需的方式成功排列模板的框。8Record.java負責(zé)將用戶的姓名和成績保存在相應(yīng)級別的文件中。9People.javaShowRecordDialog對象封裝用戶的名稱和分數(shù),以便可以按分數(shù)對用戶進行排序。10ShowRecordDialog.java用戶單擊查看圖表時。負責(zé)可視化用戶的成績。2.2 .詳細設(shè)計2.2.1主類PuzzleGame成員變量如表2所示。表2類Puzzl
6、eGame中的成員變量名字成員變量說明名字成員變量說明Puzzlepad用來描述魔法板新形象選擇新圖像酒吧用于添加菜單DefaultImage使用默認圖像大菜單選擇標(biāo)高DigitPlay數(shù)碼游戲選擇圖像選擇圖像播放圖像圖像游戲OneGrade、初學(xué)者StartButton開始二樓高級圖像Image聲明對象工具負責(zé)創(chuàng)建Image對象(2)方法見表3。表3 PuzzleGmae方法方法名稱功能PuzzleGame()負責(zé)完成窗口初始化任務(wù)ActionPerformed(Actionevent)PuzzleGame類實現(xiàn)ActionListener接口的方法Main()運行程序的門戶方法(3)有關(guān)源
7、代碼,請參見文件PuzzleGame.java2.2.2.Pazzlepad類成員變量如表4所示。表4類Puzzlepad的成員變量名字成員變量說明名字成員變量說明積分Point類型的二維數(shù)組,用于確定模板中長方體的位置HandleMove負責(zé)處理Block對象中的鼠標(biāo)事件區(qū)塊Block類型的二維陣列,代表立方結(jié)構(gòu)中的方塊HandleImage負責(zé)將一個圖像分成多個小圖像Distance(int類型)Point對象根據(jù)distance的值進行初始化,以確定point對象之間的距離VerifySuccess確保用戶根據(jù)需要成功排列了長方體灰色的此值表示magic plate的級別,默認值為1圖像
8、Image聲明的圖像對象m,n值分別是二維陣列point和block的行數(shù)和列數(shù)。默認值為3工具Toolkit物件,建立宣告image的影像物件:image(2)方法見表5。表5 Puzzlepad方法方法名稱功能Puzzlepad()負責(zé)創(chuàng)建Puzzlepad對象GetHandleMove()返回HandleMove對象Setmage(圖像)設(shè)定Image物件SetGrade(int)設(shè)置模仿的級別GetGrade()返回到GradeNeedInit()完成Block和Point物件的建立,并完成其他物件的初始化SetIsDigitplay()將立方設(shè)置為數(shù)字回放SetIsImageplay
9、()將立方設(shè)置為圖像回放PaintComponent()在立方體的右側(cè)繪制立方體使用的圖像。(3)有關(guān)源代碼,請參見文件Puzzlepad.java2.2.3.Block類別成員變量如表6所示。表6類Block中的成員變量名字成員變量說明積分確定Block對象在Puzzlepad中創(chuàng)建的magic plate容器中的位置物件確定Block對象中顯示的數(shù)字或圖像(2)方法見表7。表7 Block方法方法名稱功能SetAtPoint(Point)設(shè)定自己的點會設(shè)定point物件的參考GetAtPoint()返回Point對象的引用的 point Setobject(對象)設(shè)置自己的成員對象油漆元件
10、(graphics)繪制Image物件(3)有關(guān)源代碼,請參閱Block.java文件2.2.4.Point類成員變量如表8所示。表8類Point中的成員變量名字成員變量說明x,y基于int的兩個數(shù)據(jù),表示容器坐標(biāo)的x軸坐標(biāo)和y軸坐標(biāo)值HaveBlock布爾值數(shù)據(jù):如果Block對象位于Point對象中,則為ture否則為false區(qū)塊用于存儲對Block對象的參照,指示Block對象當(dāng)前位于Point對象中(2)方法見表9。表9類Point方法方法名稱功能Point(int,int)用于創(chuàng)建Point對象的配置方法IsHaveBlock()boolean數(shù)據(jù),如果當(dāng)前Point對象返回Blo
11、ck對象為ture,則返回falseSetHaveBlock (boolean)基于參數(shù)的值設(shè)置當(dāng)前Point對象是否包含Block對象GetX()、getY()返回x和y軸坐標(biāo)Epuals(TowerPoint)檢查當(dāng)前Point對象是否與參數(shù)指定的Point對象相同Set block將指定為參數(shù)的Block對象放置在當(dāng)前Point對象中GetBlock()返回當(dāng)前Point對象的Block對象(3)有關(guān)源代碼,請參見文件Point.java2.2.5.HandleImage類成員變量如表10所示。表10類HandleImage中的成員變量名字成員變量說明ImageWidth,imageHe
12、ight兩個int數(shù)據(jù),每個數(shù)據(jù)存儲圖像的寬度和高度工具Toolkit物件,用于匯入Image物件(2)方法見表11。表11類HandleImage方法方法名稱功能HandleImage()完成HandleImage對象初始化的配置方法GetImages(Image,int,int)將參數(shù)指定的Image圖像分解為幾個較小的圖像,將圖像存儲在Image數(shù)組中,然后返回到該數(shù)組中。(3)有關(guān)源代碼,請參閱HandleImage.java文件2.2.6.HandleMove類成員變量如表12所示。表12類HandleMove的成員變量名字成員變量說明積分point類型的二維數(shù)組,用于存儲對Puzz
13、lepad magic plate容器中Point數(shù)組的引用SpendTime用于記錄用戶玩魔術(shù)板游戲所用的時間。RecordTime計時器演出時間在JTexField中創(chuàng)建的文本框,負責(zé)顯示時間VrifyVerifySuccess聲明中的對象,用于保存對PuzzlePad的工作表中的verifySuccess的引用(2)方法見表13。表13類HandleMove方法方法名稱功能HandleMove()建立HandleMove物件的組織方法SetPoint(Point)將對puzzlepad magic plate容器中point對象的引用傳遞到該對象的point,以便HandleMove移動
14、Block對象SetVerifySuccess(VerifySuccess)如果將Puzzlepad magic board容器中verifySuccess對象的引用傳遞給該對象的verify,則verify對象將負責(zé)確定magic plate的Block對象是否根據(jù)需要成功對齊InitSpendTime()將SpendTime值設(shè)定為0MousePressed(KeyEvent)執(zhí)行滑鼠左鍵事件,以根據(jù)規(guī)則移動Block物件Mouse released(鼠標(biāo)事件)確定用戶是否根據(jù)需要成功排列Block對象ActionPerformed(ActionEvent)顯示使用者目前的經(jīng)歷時間(3)有
15、關(guān)源代碼,請參閱HandleMove.java文件2.2.7.VerifySuccess類成員變量如表14所示。表14類VerifySuccess的成員變量名字成員變量說明積分point類型的二維數(shù)組,用于存儲對Puzzlepad magic plate容器中Point數(shù)組的引用物件儲存格可以儲存所有物件的Object陣列(2)方法見表15。表15類VerifySuccess方法方法名稱功能HandleMove()建立HandleMove物件的組織方法SetPoint(Point)將Puzzlepad magic plate容器中point對象的引用傳遞到該對象的point。SetPoint(Object)將Puzzlepad magic plate容器中Integer數(shù)組或Image數(shù)組的引用傳遞給該對象的objectIsSuccess()成功的isSuccess()方法返回ture,否則返回false(3)有關(guān)源代碼,請參閱VerifySuccess.java文件2.2.8.Record類別成員變量如表16所示。表16類記錄中的成員變量名字成員變量說明時間使用者的使用時間YourName用戶用于輸入名稱的文本框
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 各行業(yè)收入占比情況表
- 2024年軟泡聚醚項目投資申請報告代可行性研究報告
- 2025年上半年宜賓江安縣招考高層次和緊缺專業(yè)高校畢業(yè)生易考易錯模擬試題(共500題)試卷后附參考答案
- 2025年上半年安徽馬鞍山市博望區(qū)政府部門招聘派遣制人員12人易考易錯模擬試題(共500題)試卷后附參考答案
- 2025年上半年安徽阜陽阜南縣公橋鄉(xiāng)招考村級后備干部10人易考易錯模擬試題(共500題)試卷后附參考答案
- 2025年上半年安徽蚌埠機電技師學(xué)院招考兼職教師易考易錯模擬試題(共500題)試卷后附參考答案
- 2025年上半年安徽省宿州市直事業(yè)單位考試筆試易考易錯模擬試題(共500題)試卷后附參考答案
- 2024年片式半導(dǎo)體器件項目資金籌措計劃書
- 2025年上半年寧波溫嶺市地方稅務(wù)局派遣人員招考易考易錯模擬試題(共500題)試卷后附參考答案
- 2025四川旻清環(huán)??萍加邢薰炯闭?人筆試參考題庫附帶答案詳解
- 2025年電力人工智能多模態(tài)大模型創(chuàng)新技術(shù)及應(yīng)用報告-西安交通大學(xué)
- 學(xué)習(xí)雷鋒主題班會雷鋒日學(xué)習(xí)雷鋒精神-
- 事故隱患內(nèi)部舉報獎勵制度
- 2020-2024年安徽省初中學(xué)業(yè)水平考試中考歷史試卷(5年真題+答案解析)
- 家畜傳染病與寄生蟲病
- 部編人教版五年級下冊小學(xué)語文第二單元全套教學(xué)課件 (含口語、習(xí)作及園地課件)
- 第5章 海洋資源開發(fā)與管理
- 工業(yè)氣體企業(yè)公司組織架構(gòu)圖職能部門及工作職責(zé)
- 全員安全風(fēng)險辨識評估活動實施方案(8頁)
- 小升初個人簡歷表
- 電工每日巡查簽到表
評論
0/150
提交評論