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

正文內(nèi)容

畢業(yè)論文-基于java語言推箱子游戲的設(shè)計(jì)與實(shí)現(xiàn)(參考版)

2024-11-11 23:16本頁面
  

【正文】 (現(xiàn)在是第。 } (new Color(0,0,0))。 j20。 i20。 } int maxlevel(){return max。 maptmp=()。 manX=()。 Levelmaptmp=new Readmap(i)。 當(dāng)游戲玩家想要自主選擇關(guān)卡時(shí),可以隨意輸入想要跳入的關(guān)卡,節(jié)約了時(shí)間,玩家同過選擇的關(guān)卡可以有效地挑戰(zhàn)自我,連接上次的游戲進(jìn)度。 setMenuBar(bar)。(setmuc)。 MenuBar bar=new MenuBar()。 (about)。 (this)。 (this)。 (this)。(guang)。(qin)。 (this)。 (this)。 (this)。(exit)。(back)。(next)。 (renew)。 ()。 Container cont=getContentPane()。 setLocation(300,20)。 setVisible(true)。 mainFrame() { super(推箱子 )。對(duì)于每一關(guān),如果所有的表示目的地的狀態(tài)都由“ m”變成了“ i”,則表示通過該關(guān),可以 進(jìn)入下一關(guān)。 主函數(shù)首先設(shè)置寄存器 AX 的高位和低位,顯示器軟中斷,進(jìn)行顯示狀態(tài)的設(shè)置,初始化 屏幕,初始化第一關(guān),并顯示操作提示信息和版權(quán)信息。 () 函數(shù)原型: void reset(int i) reset()函數(shù)的功能是重置當(dāng)前關(guān)。 ② 如果下下一步位置的狀態(tài)為目的地,則把箱子從目的地移動(dòng)到目的地(調(diào)用 moveBoxDestoDes()函數(shù)),然后把光標(biāo)移動(dòng)到下一步位置(如果當(dāng)前位置的狀態(tài)為目的地,則應(yīng)先畫目的地(調(diào)用 printDestination()函數(shù)))。 ③ 其它情況則直接返回,不作任何處理。 ( 3) 若下一步所在位置的狀態(tài)為箱子(“ b”),則: ① 如果下下一步位置的狀態(tài)為“ 0”,則把箱子從空地移動(dòng)到空地(調(diào)用 moveBoxSpacetoSpace()函數(shù)),然后 北京郵電大學(xué)畢業(yè)設(shè)計(jì) 18 把光標(biāo)移動(dòng)到下一步位置(如果 當(dāng)前位置的狀態(tài)為目的地,則應(yīng)先畫目的地(調(diào)用printDestinanion()函數(shù)))。 ( 2) 若下一步所在位置的狀態(tài)為目的地(“ i”)或者什么都沒有( “ 0”),則: ① 若當(dāng)前位置的狀態(tài)為目的地,則在當(dāng)前位置畫目的地(調(diào)用 printDestination()函 數(shù))、在下一步位置畫小人(調(diào)用 printMan()函數(shù))。首先判斷移動(dòng)的方向,然后根據(jù)小人的當(dāng)前位置、下一步位置以及下下一步位置所在的狀態(tài)進(jìn)行處理。 () 函數(shù)原型 : void moid(int x,int y,char a) Move()函數(shù)根據(jù)按下的鍵來處理小人的移動(dòng)。對(duì)于前面兩個(gè)函數(shù),首先判斷移動(dòng)的方向,人小人所在的位置沿著移動(dòng)的方向移動(dòng)一步畫小人,移動(dòng)兩步畫箱子(調(diào)用 printBox()函數(shù)),并設(shè)置狀態(tài)為“ b”;對(duì)于后面兩個(gè)參數(shù),首先判斷移動(dòng)的方向,從小人所在的位置沿著移動(dòng)方向移動(dòng)一步畫小人,移動(dòng)兩上在目的地畫箱子(調(diào)用 printBoxDes()函數(shù)),并設(shè)置狀態(tài)為“ i”,表明箱子在目的地上。 X、 y 指明小人當(dāng)前所處的位置,字符 a 表示移動(dòng)的方向,有“ u”、“ d”、“ l”和“ r” 4 個(gè)值,分別表示向上、下、左、右移動(dòng) 。函數(shù)返回包含各個(gè)目的地位置的鏈表。游戲的第一關(guān)至第四關(guān)難度依次增加。這些函數(shù)的功能和實(shí)現(xiàn)步驟相似。該函數(shù)首先用兩個(gè) for 循環(huán)初始化屏幕 20*20 范圍內(nèi)的狀態(tài),初始化為 0,以后根據(jù)實(shí)際情況重新賦值;然后設(shè)置屏幕輸出狀態(tài),設(shè)置寄存器 AX 的高位為 0,低位為 3,表示以 80*25 的彩色方式顯示;最后移動(dòng)光標(biāo)到指定的位置輸出操作提示信息以及版權(quán)信息。該函數(shù)通過軟中斷來實(shí)現(xiàn),首先設(shè)置寄存器 AX 的高位和低位,設(shè)置高位 0xa表示在光標(biāo)位置顯示字符;設(shè)置低位 02(ASCII 值 ),表示輸出的字符;然后設(shè)置寄存器CX 為 01,表示重復(fù)輸出的次數(shù),這里只輸出一次;最后產(chǎn)生類型為 0x10 的 中斷,表示顯示器輸出。 7. printMan() 函數(shù)原型 : void printMan(int x,int y) printMan()函數(shù)用于畫小人。 () 函數(shù)原型 : void printDestination1(int x,int y,winer **win,winer **pw) printDestination1()函數(shù)與 printDestination()函數(shù)功能基本相同,都是畫目的地函數(shù),但是 printDestination1()增加了記錄每一個(gè)目的地位置的功能。 () 函數(shù)原型: void printDestination(int x,int y) printDestination()函數(shù)用于畫目的地,傳入?yún)?shù) x、 y 指明位置。 () 函數(shù)原型: void printBoxDes(int x,int y) printBoxDes()函數(shù)用于在目的地畫箱子,傳入?yún)?shù) x、 y 指明位置。 () 函數(shù)原型: void printBox(int x,int y) printBox()函數(shù)用于在非目的地畫箱子,傳入?yún)?shù) x、 y 指明位置。 () 函數(shù)原型: void printWall(int x,int y) printWall()函數(shù)用于畫墻壁,傳入?yún)?shù) x、 y 指明位置。 函數(shù)模型 () 函數(shù)原型: void putoutChar(int y,int x,char ch,char fc,char bc) putoutChar()函數(shù)在屏幕上的指定位置輸出指定的字符。 ( 5)功能控制模塊。 該模塊用于移動(dòng)箱子,包括目的地之間、空地之間和目的地與空地之間的箱子移動(dòng)。 該模塊主要是被其它模塊調(diào)用,用于畫墻、在空地畫箱子、在目的地畫箱子、畫小人和畫目的地。 該模塊包括屏幕初始化和游戲第一關(guān)的初始化。 游戲流程圖 圖 31 系統(tǒng)功能模塊 本 程序包括 5 個(gè)模塊,分別是初始化模塊、畫圖模塊、移動(dòng)箱子模塊、移動(dòng)小 模塊和功能控制模塊,如圖 1 所示。 顯示平臺(tái) “ 可移植性高 ” 是 Java 的屬性之一, Java 的應(yīng)用涉及許多領(lǐng)域,如手機(jī)、單機(jī)程序及瀏覽器等,不同的平臺(tái)對(duì)于它的設(shè)定不盡相同,若將顯示平臺(tái)獨(dú)立為一個(gè)類,將有助于主程序的完整性及移植程序的快速性。 北京郵電大學(xué)畢業(yè)設(shè)計(jì) 15 程序運(yùn)邏輯 程序中邏輯運(yùn)算 包含小人與箱子的 移動(dòng)、 鍵盤事件的 響應(yīng) 、保存數(shù)據(jù)以實(shí)現(xiàn)悔步以及重新 開始的操作等 等。 地圖文件是 20*20 的變量數(shù)組文件,在地圖不同的數(shù)字代表不同的意義。 地圖文件的引用 在設(shè)計(jì)游戲程序時(shí),通常都是把游戲的畫面布局?jǐn)?shù)據(jù)存放在一個(gè)地圖文件中。 分析對(duì)象的技巧在于它的重復(fù)利用及維護(hù)效率。 。 2. 小人與箱子的移動(dòng) 。 因此, 經(jīng)過再三比較 三 種語言 之 后 ,采用 了 Java語言 來 編寫 推箱子小游戲的程序代碼 。 Java不支持 C語言 /C++語言中的指針,因?yàn)橛芍羔標(biāo)M(jìn)行的內(nèi)存地址操作常會(huì)造成不可預(yù)知的錯(cuò)誤,同時(shí)通過指針對(duì)某個(gè)內(nèi)存地址進(jìn)行顯式類型轉(zhuǎn)換后,可以訪問一個(gè) C++中的私有成員,從而破壞安全性,造成系統(tǒng)的崩潰。而在C語言和 C++語言中,依賴于不加封裝的全局變量常常造成系統(tǒng)的崩潰。 Java語言和 C語言、 C++語言的 區(qū)別有: .Java程序中,不能在所有類之外定義全局變量,只能通過在一個(gè)類中定義公用、靜態(tài)的變量來實(shí)現(xiàn)一個(gè)全局變量。 對(duì)于變量聲明、參數(shù)傳遞、操作符、控制語句等方面, Java使用了與 C、 C++相同的風(fēng)格,使得熟悉 C、 C++的程序員能很方便地進(jìn)行編程。 C++語言 和 Java語言 在面向?qū)ο筮@方面都比較強(qiáng), C++語言 為了與 C語言兼容,其是包含了些面向過程的成分; Java語言 除了 C++語言 中非面向過程的部分,其程序編寫過 北京郵電大學(xué)畢業(yè)設(shè)計(jì) 13 程就是設(shè)計(jì)、實(shí)現(xiàn)類,定義其屬性、行為的過程。這種方法要求語言必須具備抽象、封裝、繼承和多態(tài)性這幾個(gè)關(guān)鍵要素。 面向?qū)ο蟮某绦蛟O(shè)計(jì)吸取了結(jié)構(gòu)化程序設(shè)計(jì)的先進(jìn)思想,并把它們同幾個(gè)支持用戶用新方法進(jìn)行程序設(shè)計(jì)的有力概念結(jié)合在一起。每種對(duì)象都有自己的內(nèi)部狀態(tài)和運(yùn)動(dòng)規(guī)律,不同對(duì)象間的相互聯(lián)系和相互作用就構(gòu)成了各種不同的系統(tǒng),并進(jìn)而構(gòu)成整個(gè)客觀世界。 方案選擇 面向?qū)ο笫且环N認(rèn)識(shí)世界的方法,是一種程序設(shè)計(jì)方法。 C 語言有一個(gè)突出的優(yōu)點(diǎn)就是適合于多種操作系統(tǒng),如 DOS、 UNIX、 windows 98. windows NT;也適用于多種機(jī)型。 一般只比匯編程序生成的目標(biāo)代碼效率低 10 へ 20%。 由于 C 語言允許直接訪問物理地址,可以直接對(duì)硬件進(jìn)行操作,因此它既具有高級(jí)語言的功能,又具有低級(jí)語言的許多功能,能夠像匯編語言一樣對(duì)位、字節(jié)和地址進(jìn)行操作,而這三者是計(jì)算機(jī)最基本的工作單元,可用來寫系 統(tǒng)軟件。 雖然 C 語言也是強(qiáng)類型語言,但它的語法比較靈活,允許程序編寫者有較大的自由度。 C 語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結(jié)構(gòu)化。 結(jié)構(gòu)式語言的顯著特點(diǎn)是代碼及數(shù)據(jù)的分隔化,即程序的各個(gè)部分除了必要的信息交流外彼此獨(dú)立。且計(jì)算功能、邏輯判斷功能強(qiáng)大。并引入了指針概念,使程序效率更高。 C 語言的數(shù)據(jù)類型有:整型、實(shí)型、字符型、數(shù)組類型、指針類型、結(jié)構(gòu)體類型、共用體類型等。靈活使用各 種運(yùn)算符可以實(shí)現(xiàn)在其它高級(jí)語言中難以實(shí)現(xiàn)的運(yùn)算。 C 語言把括號(hào)、賦值、強(qiáng)制類型轉(zhuǎn)換等都作為運(yùn)算符處理。 。把高級(jí)語言的基本結(jié)構(gòu)和語句與低級(jí)語言的實(shí)用性結(jié)合起來。因而也增加了整個(gè)語言的復(fù)雜性,掌握起來有一定難度 優(yōu)點(diǎn) : 1. 簡潔緊湊、靈活方便 。 C++目前流行的最新版本是 Borland C++, Symantec C++和 Microsoft VisualC++。 在 C 的基礎(chǔ)上,一九八三年又由貝爾實(shí)驗(yàn)室的 Bjarne Stroustrup 推出了 C++。 它的應(yīng)用范圍廣泛,具備很強(qiáng)的數(shù)據(jù)處理能力,不僅僅是在軟件開發(fā)上,而且各類科研都需要用 到 C 語言,適于編寫系統(tǒng)軟件,三維,二維圖形和動(dòng)畫。它既具有高級(jí)語言的特點(diǎn),又具有匯編語言的特點(diǎn)。 BR以上介紹了 Java 語言的一些主要特點(diǎn),除此之外它還具有動(dòng)態(tài)性、類庫豐富、高性能等特點(diǎn),這些都使得 Java 語言在各個(gè)方面得以成熟和完善,成為大眾日益青睞的程序設(shè)計(jì)語言之一。 Java 語言在安全性方面引入了實(shí)時(shí)內(nèi)存分配及布局來防止程序員直接修改物理內(nèi)存布局;通過字節(jié)代碼驗(yàn)證器對(duì)字節(jié)代碼的檢驗(yàn),以防止網(wǎng)絡(luò)病毒及其它非法代碼侵入。 。在 C++語言中,程序員在編寫程序時(shí)要仔細(xì)地處理內(nèi)存的使用,例如當(dāng)某個(gè)內(nèi)存快使用完畢時(shí),要及時(shí)釋放,以供其它程序使用,一旦內(nèi)存管理不當(dāng),就有可能造成內(nèi)存空間浪費(fèi)或程序運(yùn)行故障。 。 Java程序可以設(shè)計(jì)成具有多個(gè)線程,例如讓一個(gè)線程負(fù)責(zé)數(shù)據(jù)的檢索、查尋,另一個(gè)線程與用戶進(jìn)行交互,這樣,兩個(gè)線程得以并行執(zhí)行。 。 Java 是面向?qū)ο蟮木W(wǎng)絡(luò)編程語言,由于它支持 TCP/ IP 協(xié)議,使得用戶可以通過瀏覽器訪問到 Inter 上的各種動(dòng)態(tài)對(duì)象。這體現(xiàn)了 Java 語言的與平臺(tái)無關(guān)性,使得 Java 程序可以在任何平臺(tái)上運(yùn)行,如 MSDOS, Windows, Unix 等,因此具有很強(qiáng)的移植性。 Java 語言經(jīng)編譯后生成與計(jì)算機(jī)硬件結(jié)構(gòu)無關(guān)的字節(jié)代碼( Bytecode),這些字節(jié)代碼被定義為不依賴任何硬件平臺(tái)和操作系統(tǒng)。 Java 同樣支持類繼承,這樣也減少了程序設(shè)計(jì)的復(fù)雜性。 。 Java 語言與 C++類似,如果用戶了解 C++和面向?qū)ο蟮母拍?,就可以很快編寫?Java 程序;此外, Java 又不同于諸如 C++語言提供的各種各樣的方法,它只提供了基本的方法,這樣就減少了編程的復(fù)雜性,例如去掉了頭文件、指針變量、結(jié)構(gòu)、運(yùn)算符重載、多重繼承等復(fù)雜特性。 Java 語言的 結(jié)構(gòu)與編寫方式,與 c++語言類似,因此學(xué)習(xí) Java 語言,不僅要了解 Java 語言獨(dú)有的編程特點(diǎn),同時(shí)還要有程序設(shè)計(jì)基礎(chǔ)和面向?qū)ο蟮母拍睢?C++正在從軟件的可靠性,可重用性,可擴(kuò)充性,可維護(hù)性等方面體現(xiàn)出它的優(yōu)越性。 由于具有以上特點(diǎn), C++已經(jīng)開始取代 C 語言工作,被廣泛地應(yīng)用于各行領(lǐng)域的程序設(shè)計(jì)工作中。 北京郵電大學(xué)畢業(yè)設(shè)計(jì) 10 ( 2)以前使用 C 語言編寫的大批軟件可以不加任何修改,直接在 C++開發(fā)環(huán)境下維護(hù)。 C++程序的設(shè)計(jì)宗旨就是在不改變 C 語言語法規(guī)則的
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1