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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于java的飛機(jī)大戰(zhàn)游戲開(kāi)發(fā)-資料下載頁(yè)

2024-12-03 19:29本頁(yè)面

【導(dǎo)讀】還是游戲機(jī)上,都能見(jiàn)到與飛機(jī)相關(guān)的射擊類(lèi)游戲。不過(guò),最初常見(jiàn)的飛機(jī)大戰(zhàn)游戲是。顏六色,3D視覺(jué)沖擊強(qiáng)。控制臺(tái)、科學(xué)超級(jí)計(jì)算機(jī)、移動(dòng)電話和互聯(lián)網(wǎng),同時(shí)擁有了全球最大的開(kāi)發(fā)者專(zhuān)業(yè)社群。在全球云計(jì)算和移動(dòng)互聯(lián)網(wǎng)的產(chǎn)業(yè)環(huán)境下,Java更具備了顯著優(yōu)勢(shì)和廣闊前景。首先簡(jiǎn)要介紹課題的研究背景、目的及意義,Java的發(fā)展歷程、當(dāng)前國(guó)內(nèi)。然后介紹Eclipse平臺(tái)開(kāi)發(fā)環(huán)境及環(huán)境搭建,最后講述了基于Java飛機(jī)。大戰(zhàn)游戲功能的實(shí)現(xiàn)。其功能模塊如下:主界面模塊,Hero模塊,Enemy模塊,Bullet

  

【正文】 destroyAll()。 return。 } for(int j = ()1。 j = 0。 j) { Bullet bullet = (j)。 24 if(!) continue。 if(()) { (敵機(jī)與子彈撞了 )。 (()1)。 = false。 } } } (50)。 } } }).start()。 } /** * 兩個(gè)矩形相交判斷 * @param object * @return */ public boolean isIntersectWith(GameObject object) { Point p1 = ()。 Dimension d1 = ()。 Point p2 = ()。 Dimension d2 = ()。 //this在 object左邊 if( + ) return false。 //this在 object右邊 if( +) return false。 //this在 object上邊 if( + ) return false。 //this在 object下邊 if( + ))。 return false。 25 return true。 } 積分顯示模塊實(shí)現(xiàn) 界面實(shí)現(xiàn) 圖 積分成績(jī)顯示 核心代碼 核心代碼如下: /** * 積分成績(jī)顯示 */ public class Label { public static String[] numName = { ./number/,./number/, ./number/, ./number/, ./number/, ./number/, 26 ./number/, ./number/, ./number/, ./number/}。 public static void showNum(int num) { String scoreStr = (num)。 int len = ()。 int x,y。 //積分 牌在中間 ,共 6張數(shù)字圖片 for(int i = 0。 i 3。 i++) { GameImage number。 //各個(gè)位置的數(shù)字安排 if(i len) { char ch = (leni1)。 number = new GameImage(numName[ch39。039。])。 } else { number = new GameImage(numName[0])。 } (x, y)。 x = x 40。 } } public static void showScore(int score) { String scoreStr = (score)。 int len = ()。 int x,y。 //顯示牌在中間,位置 85,145 x = 285。 y = 145。 for(int i = 0。 i 6。 i++) 27 { GameImage number = null。 if(i len) { char ch = (leni1)。 number = new GameImage(numName[ch39。039。])。 } else { number = new GameImage(numName[0])。 } (x, y)。 x = x 40。 } } 28 第四章 軟件測(cè)試 測(cè)試的定義 測(cè)試是軟件開(kāi)發(fā)的最后一個(gè)階段,是保證軟件質(zhì)量的重要手段。從本質(zhì)上說(shuō),軟件測(cè)試是“探測(cè)”,在“探測(cè)”中發(fā)現(xiàn)軟件的毛病,目的不在于驗(yàn)證程序的正確性,而是發(fā)現(xiàn)軟件中潛在的錯(cuò)誤。 測(cè)試的重要性 軟件測(cè)試在軟件生命周期中占據(jù)重要的地位,在傳統(tǒng)的瀑布模型中,軟件測(cè)試學(xué)僅處于運(yùn)行維護(hù)階段之前,是軟件產(chǎn)品交付用戶使用之前保證軟件質(zhì)量的重要手段。近來(lái),軟件工程趨向一種新的觀點(diǎn),即認(rèn)為軟件生 命周期每一階段中都應(yīng)包含測(cè)試,從而檢驗(yàn)本階段的成果是否接近預(yù)期的目標(biāo),盡可能早的發(fā)現(xiàn)錯(cuò)誤并加以修正,如果不在早期階段進(jìn)行測(cè)試,錯(cuò)誤的延時(shí)擴(kuò)散常常會(huì)導(dǎo)致最后成品測(cè)試的巨大困難。 測(cè)試方法 程序測(cè)試的主要方法分為兩大類(lèi),白盒測(cè)試和黑盒測(cè)試。 白盒測(cè)試:一種是以程序的內(nèi)部邏輯結(jié)構(gòu)為依據(jù)而設(shè)計(jì)測(cè)試用例的方法,因而有稱(chēng)結(jié)構(gòu)測(cè)試或玻璃盒測(cè)試。白盒測(cè)試就是要選取足夠的測(cè)試用例,對(duì)源代碼實(shí)行比較充分的覆蓋,以便盡可能多的發(fā)現(xiàn)程序中的錯(cuò)誤。主要有兩種方法:一種稱(chēng)為邏輯覆蓋法,另一種稱(chēng)為路徑覆蓋法。 黑盒測(cè)試:也稱(chēng)為功能 測(cè)試,數(shù)據(jù)驅(qū)動(dòng)測(cè)試等,黑盒測(cè)試主要是根據(jù)輸入條件和輸出條件的確定測(cè)試數(shù)據(jù),來(lái)檢查程序是否能產(chǎn)生正確的輸出。進(jìn)行黑盒測(cè)試主要有以下面的集中方法:等價(jià)分類(lèi)法、邊界值分析法、猜錯(cuò)法、因果圖法。 本系統(tǒng)的測(cè)試綜合了白盒測(cè)試、黑盒測(cè)試兩種方法,但主要使用的是黑盒測(cè)試方法。在測(cè)試當(dāng)中遵循了“盡早地和不斷進(jìn)行測(cè)試”,“保證測(cè)試用例的完整性和有效性”原則。通過(guò)測(cè)試到達(dá)以下測(cè)試目的: ( 1)初試化、終止檢查 ( 2)功能檢查 檢查功能是否爭(zhēng)取,是否遺漏或?qū)崿F(xiàn)不了應(yīng)該實(shí)現(xiàn)的功能等。 29 ( 3)數(shù)據(jù)檢查 檢查數(shù)據(jù)結(jié)構(gòu)或外部 信息是否有數(shù)據(jù)文件訪問(wèn)錯(cuò)誤 檢查是否能進(jìn)行正確地初始化或終止。 測(cè)試結(jié)果 ( 1)初始和結(jié)束界面的進(jìn)入和返回正常及時(shí),界面和菜單沒(méi)有出現(xiàn)無(wú)法響應(yīng)的現(xiàn)象,測(cè)試通過(guò)。 ( 2)游戲過(guò)程中的背景音樂(lè)的播放、飛機(jī)爆炸的聲音沒(méi)有出現(xiàn)延時(shí)或者錯(cuò)誤播放的現(xiàn)象,測(cè)試通過(guò)。 ( 3)飛機(jī)啟動(dòng)和飛行時(shí)的動(dòng)畫(huà)效果沒(méi)有出現(xiàn)閃頓現(xiàn)象,可以順利的播放和消失,測(cè)試通過(guò)。 ( 4) Hero 戰(zhàn)機(jī)在鍵盤(pán)的控制中沒(méi)有出現(xiàn)失效的情況,可以及時(shí)響應(yīng)鍵盤(pán)的操作,測(cè)試通過(guò)。 ( 5)多種 Enemy 從對(duì)方以隨機(jī)的方式出現(xiàn),沒(méi)有出現(xiàn) Enemy 之間互相重疊 ,碰撞的現(xiàn)象,測(cè)試通過(guò)。 ( 6)子彈與 Enemy, Enemy 與 Hero 發(fā)生相交碰撞,沒(méi)有出現(xiàn)失效或者延時(shí)的現(xiàn)象,測(cè)試通過(guò)。 ( 7) 3 種 Enemy 的積分值分別為 200,400,600,積分牌顯示的結(jié)果和真實(shí)敵機(jī)被擊落的情況沒(méi)有出現(xiàn)不一致的現(xiàn)象,測(cè)試通過(guò)。 30 結(jié) 論 此次畢業(yè)設(shè)計(jì)做的是基于 Java 的飛機(jī)大戰(zhàn)游戲的設(shè)計(jì)與實(shí)現(xiàn),通過(guò)幾周的努力總算圓滿結(jié)束。該軟件基本上實(shí)現(xiàn)了游戲流程中的幾個(gè)關(guān)鍵步驟,界面布局采用了 PS 繪圖渲染和修飾技術(shù),在動(dòng)畫(huà)實(shí)現(xiàn)上利用了圖片切換實(shí)現(xiàn)了電影電視中幀的概念,在技術(shù)層面上利用 Java 的多線程技術(shù),在整體模式上采用了 MVC 的分層思想,這些技術(shù)和思想的運(yùn)用使得整個(gè)開(kāi)發(fā)流程變得方便和輕松許多,這也是 Java 面向?qū)ο蟮镊攘?。在以后的工作?dāng)中,無(wú)論是在服務(wù)端,還是在移動(dòng)端,相信這段時(shí)間的鍛煉一定可以對(duì)自己產(chǎn)生很大的作用。 做項(xiàng)目之前,對(duì)整個(gè)項(xiàng)目的需求、模塊、難點(diǎn),一定要有全面和清晰的了解,這是本次畢業(yè)設(shè)計(jì)帶給我的體會(huì)。整個(gè)飛機(jī)大戰(zhàn)游戲看起來(lái)很容易,玩起來(lái)也很簡(jiǎn)單,但是其中包括的設(shè)計(jì)要素一點(diǎn)也不少,麻雀雖小,但五臟俱全。需求就是做一款經(jīng)典的飛機(jī)游戲,緬懷經(jīng)典,向經(jīng)典致敬,同時(shí)也幫助自己了解 游戲制作的基本原理和基本方式方法;模塊是以對(duì)象為劃分,有界面模塊, Hero 模塊,子彈模塊, Enemy 模塊,游戲控制模塊;難點(diǎn)在于多架戰(zhàn)機(jī)同時(shí)出動(dòng),判斷發(fā)生碰撞的算法選擇。當(dāng)你的腦海中有這么多東西時(shí),整個(gè)游戲的開(kāi)發(fā)就會(huì)變得清晰明了很多,寫(xiě)起來(lái)也很快。很多時(shí)候,做一件事或者完成一件作品的時(shí)候,經(jīng)常延期,加班,是因?yàn)槟銐焊蜎](méi)想好該怎么做,導(dǎo)致越做越復(fù)雜,越做越亂,正確做法的結(jié)果是越做越簡(jiǎn)單,越做越輕松,因?yàn)榈鼗呀?jīng)打好了,架構(gòu)已經(jīng)很清晰了。 整個(gè)軟件按照預(yù)期目標(biāo)大致實(shí)現(xiàn)了飛機(jī)大戰(zhàn)游戲的功能,當(dāng)然由于個(gè)人技術(shù)有 限以及時(shí)間的不足,整個(gè)游戲還存在一些不足 ,有待于日后進(jìn)一步的改進(jìn)和完善。比如:怎么動(dòng)態(tài)及時(shí)的顯示積分?jǐn)?shù),怎么能夠讓各種敵機(jī)在不同的時(shí)間點(diǎn)以不同速度飛行還不發(fā)生碰撞等等。這些問(wèn)題在游戲開(kāi)發(fā)中都是亟待解決的,一款好的游戲必須要在細(xì)節(jié)上下夠功夫,才能贏得玩家的喜歡,這也是游戲比較難做的原因,需要長(zhǎng)時(shí)間的技術(shù)積累才能做出一塊比較完美的游戲。 總之,革命尚未成功,同志仍需努力,飛機(jī)大戰(zhàn)游戲,還有很大的發(fā)展空間,比如可以在多人聯(lián)網(wǎng)下共同作戰(zhàn),還可以及時(shí)分享自己的戰(zhàn)績(jī),當(dāng)然這也是 Java 的強(qiáng)項(xiàng),更何況還有各種各樣的大 牛在開(kāi)源世界里奉獻(xiàn)著自己的想法和代碼。通過(guò)這次畢業(yè)設(shè)計(jì)讓自己對(duì)游戲和 Java 有了另一番了解,同時(shí)自己的編程能力得到了很大的提升,正是應(yīng)驗(yàn)了那句話,努力不一定成功,但一定會(huì)讓人發(fā)生蛻變。 31 致 謝 再過(guò)幾天,大學(xué)生活也將劃上一個(gè)句號(hào),四年的時(shí)光,猶如白駒過(guò)隙,一閃而過(guò),有人歡喜,有人哀傷。但在整個(gè)人生長(zhǎng)河當(dāng)中,這僅僅是一個(gè)逗號(hào),我們將面對(duì)的是又一次征程的開(kāi)始。 回憶過(guò)去,許許多多的事情浮現(xiàn)在腦海:剛上大學(xué)時(shí)歡樂(lè)心情和興奮的場(chǎng)景還麗麗在目。一切都是那么新鮮,那么吸引力。有歡樂(lè)也有失落。衷心感謝理學(xué)院所有支 持幫助過(guò)我的老師,謝謝你們多年來(lái)的關(guān)心和愛(ài)護(hù)。同窗的友情同樣難忘,你們與我共同走過(guò)了人生中不平凡的道路,給我留下了值得珍藏的美好記憶。 最后,我要特別感謝指導(dǎo)教師李老師。本論文是在他的悉心指導(dǎo)和熱情幫助下完成的,老師的認(rèn)真和負(fù)責(zé),給了我很大的幫助,是我專(zhuān)業(yè)技能的應(yīng)用水平得到很大提高。在此特別地向他表示衷心的高些和崇高的敬意,謝謝他細(xì)心而又耐心地輔導(dǎo),使得我得意順利的完成畢業(yè)設(shè)計(jì),同時(shí)也要感謝其他幫助過(guò)我的老師和同學(xué),他們?cè)谖页砷L(zhǎng)過(guò)程中給予了很大的幫助,在此一并表示感謝。 由于本人水平有限,加上時(shí)間緊促, 本文一定有不少缺點(diǎn)和不足,懇請(qǐng)各位老師給予幫助和指正。 32 參考文獻(xiàn) [1]謝海軍 .基于 JAVA 的手機(jī)游戲引擎的研究及實(shí)現(xiàn) [D].西南交通大學(xué) ,2021. [2]許周辰 .基于 JavaME 平臺(tái) 2D 手機(jī)游戲引擎設(shè)計(jì)與實(shí)現(xiàn) [D].西南交通大學(xué) ,2021. [3]何莉 .淺談 JAVA 游戲開(kāi)發(fā)與 FLASH 游戲開(kāi)發(fā)的比較 [J].經(jīng)營(yíng)管理者 ,2021,08:313+312. [4]梁懋寅 .基于 JAVA_NIO 技術(shù)的手機(jī)網(wǎng)絡(luò)游戲引擎研究與實(shí)現(xiàn) [D].天津大學(xué) ,2021. [5]雷麗娟 ,鄭永彬 .使用 Java 制作貪吃蛇游戲 [J].科技視界 ,2021,04:139140+122. [6]仇賓 .基于 Java 的“連連看”游戲 [J].電腦編程技巧與維護(hù) ,2021,11:7277. [7]Sc. D W C B. Advanced Java Game Programming[M]. APress, 2021. [8]Ross J M. Guiding students through programming puzzles: value and examples of Java game assignments[J]. Acm Sigcse Bulletin, 2021, 34(4):9498. 附 錄 項(xiàng)目其它模塊 images 包下的文件如下圖所示,用來(lái)加載各種飛機(jī)和子彈, sounds 包下的文件如下圖所示,用來(lái)加載游戲所用到的各種聲音, sprites 包下的文件如圖所示,用來(lái)各種機(jī)型的動(dòng)畫(huà)效果:
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1