![Java程序設(shè)計報告材料貪吃蛇_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/8/af182c90-2716-4a8a-8c85-a2a640645307/af182c90-2716-4a8a-8c85-a2a6406453071.gif)
![Java程序設(shè)計報告材料貪吃蛇_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/8/af182c90-2716-4a8a-8c85-a2a640645307/af182c90-2716-4a8a-8c85-a2a6406453072.gif)
![Java程序設(shè)計報告材料貪吃蛇_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/8/af182c90-2716-4a8a-8c85-a2a640645307/af182c90-2716-4a8a-8c85-a2a6406453073.gif)
![Java程序設(shè)計報告材料貪吃蛇_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/8/af182c90-2716-4a8a-8c85-a2a640645307/af182c90-2716-4a8a-8c85-a2a6406453074.gif)
![Java程序設(shè)計報告材料貪吃蛇_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/8/af182c90-2716-4a8a-8c85-a2a640645307/af182c90-2716-4a8a-8c85-a2a6406453075.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、實用文檔 Java程序設(shè)計?課程設(shè)計報告題 目:貪吃蛇游戲的設(shè)計與實現(xiàn)指導(dǎo)老師:沈澤剛專業(yè):計算機科學(xué)與技術(shù)班級:10-3姓名:鎏謙文案大全實用文檔一、 課程設(shè)計目的貪吃蛇游戲一款非常經(jīng)典的 游戲, 由于它比擬簡單有趣,無 論老少都比擬適合.目的是更好地了解和掌握 java語言,并熟練的 運用java語言來實現(xiàn)工程.培養(yǎng)自主學(xué)習(xí)的水平.本軟件在設(shè)計方面本著方便、實用及娛樂性高的宗旨,在外界進 行設(shè)計的過程中,始終堅持清楚明了,在性能方面能夠?qū)崿F(xiàn)效率高, 不易出錯等優(yōu)點.二、課程設(shè)計要求貪吃蛇游戲設(shè)計與實現(xiàn),主要分為以下二個模塊:游戲主界面模塊、游戲限制模塊.三、課程設(shè)計報告內(nèi)容一系統(tǒng)設(shè)計1 、
2、程序概述本程序是一個利用Java應(yīng)用軟件制作的貪吃蛇小游戲.在游戲過程中,用戶通過點擊小鍵盤區(qū)的方向鍵來限制蛇的運 行方向;當蛇沒有吃到食物且碰到墻壁或自己的身體時游戲結(jié)束.本程序的另一個功能是在程序運行窗口的左上角顯示, 用戶在 游戲過程中所得的分數(shù),不過缺點就是在退處程序后,下次翻開程序 時無法保存.2 、游戲的主界面設(shè)計游戲的主界面是進入游戲后,能夠給玩家第一感官的局部,主文案大全實用文檔要包括游戲圖形區(qū)域界面、游戲的速度選擇更新界面、游戲分數(shù)的顯 示更新界面、游戲開始按鈕、暫停游戲按鈕、退出游戲按鈕以及游戲 排行榜按鈕.3、游戲限制模塊設(shè)計這個模塊是游戲的中央環(huán)節(jié),主要完成限制游戲的開
3、始、暫停、 退出等功能.為了能夠給玩家一個很好的游戲環(huán)境, 這局部應(yīng)該做到 易懂、易操作.二主界面設(shè)計游戲界面主框架主要包括游戲圖形區(qū)域界面、游戲的開始按鈕、暫停按鈕、游戲的退出按鈕、困難程度、積分排行、關(guān)于作者三代碼設(shè)計import java.awt.Color;import java.awt.Container;import java.awt.Graphics;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event
4、.InputEvent;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import javax.swing.*;public class TanChiShe extends JFrame implements文案大全實用文檔ActionListener, KeyListener,Runnable ( private JMenuBar menuBar;private JMenu youXiMenu,nanDuMenu,fenShuMenu,guanYuMenu;privateJMenuItemkaiShiYouX
5、i,exitItem,zuoZheItem,fenShuItem;private JCheckBoxMenuItem cJianDan,cPuTong,cKunNan;private int length = 6; private Toolkit toolkit; privateinti,x,y,z,objectX,objectY,object=0,growth=0,time;privateintdifficult=2;privateintm=newint 50;privateintn=newint 50;privateThread she :=null ;privateintlife=0;p
6、rivateintfoods :=0;privateintfenshu=0;publicvoidrun() /運行(time=500;for (i=0;i=length-1;i+)(mi=90-i*10;ni=60;x=m0;y=n0;z=4;while (she!= null )(check();try(she. sleep (time);catch (Exception ee)(System. out .println(z+);public TanChiShe()(文案大全實用文檔*創(chuàng)立新對象*setVisible true ;menuBar = new JMenuBar;Containe
7、r con=getContentPane; toolkit=getToolkit;/*游戲菜單對象*youXiMenu = new JMenu游戲;kaiShiYouXi = new JMenuItem開始游戲;exitItem = new JMenuItem 退出游戲;/*困難程度對象*nanDuMenu = new JMenu 困難程度;cJianDan = new JCheckBoxMenuItem 簡單cPuTong =new JCheckBoxMenuItem普;ffi;cKunNan =new JCheckBoxMenuItem困難/*分數(shù)菜單對象*fenShuMenu =fenS
8、huItem =/*/*new JMenu 積分排行;new JMenuItem 最高記錄;關(guān)于對象 *guanYuMenu = new JMenu關(guān)于zuoZheItem = new JMenuItem關(guān)于作者;設(shè)置關(guān)于菜單 *guanYuMenu.addzuoZheItem;/*設(shè)置困難程度菜單*nanDuMenu.addcJianDan;nanDuMenu.addcPuTong;nanDuMenu.addcKunNan;文案大全實用文檔*設(shè)置分數(shù)菜單*fenShuMenu.add(fenShuItem);/*設(shè)置游戲菜單*youXiMenu.add(kaiShiYouXi);youXiM
9、enu.add(exitltem);/*設(shè)置主菜單*menuBar.add(youXiMenu);menuBar.add(nanDuMenu);menuBar.add(fenShuMenu);menuBar.add(guanYuMenu);/*監(jiān)聽注冊 *zuoZheItem.addActionListener(this );kaiShiYouXi.addActionListener(this );exitItem.addActionListener(this );addKeyListener( this );fenShuItem.addActionListener(this );/*加快捷鍵
10、*KeyStrokekeyOpenKeyStroke. getKeyStroke (O,InputEvent. CTRL_DOWN_MASK kaiShiYouXi.setAccelerator(keyOpen);KeyStrokekeyExit/*KeyStroke. getKeyStroke (X,InputEvent. CTRL_DOWN_MASK exitItem.setAccelerator(keyExit);設(shè)置框架 *setJMenuBar(menuBar);setTitle( 貪吃蛇)setResizable( false );setBounds(300,200,400,400
11、);validate();setDefaultCloseOperation(EXIT_ON_CLOSE);一 一public static void main(String args)new TanChiShe();/*菜單監(jiān)聽 *文案大全實用文檔public void actionPerformed(ActionEvent e) (if (e.getSource()=kaiShiYouXi)(length = 6;life = 0;foods = 0;if (she= null )(she= new Thread( this );she.start();elseif (she!= null
12、)(she=null ;she= new Thread( this );she.start();if (e.getSource()=exitItem)(System. exit (0);if (e.getSource()=zuoZheItem)(JOptionPane. showMessageDialog (this , 梁瀟+nn);if (e.getSource()=fenShuItem) (JOptionPane.+fenshu+);H*showMessageDialog (this , 最 高 記錄為檢查一下*public void check() (isDead();if (she!
13、= null )(if (growth=0) (文案大全實用文檔reform();) else ( upgrowth();)產(chǎn)生食物坐標 *if (x=objectX&y=objectY) ( object=0; growth=1; toolkit.beep(); ) /*)Math. floor (Math. random ()*39)*10;)Math. floor (Math. random ()*29)*10+50;if (object=0) ( object=1; objectX=(intobjectY=(int) this .repaint();) ) void isDead()
14、(if (z=4) ( x=x+10; ) else if (z=3) ( x=x-10;) else if (z=2) ( y=y+10;) else if (z=1) (y=y-10;)if (x39011y390) (文案大全實用文檔she= null ;)for (i=1;ilength;i+)( if (mi=x&ni=y)( she= null ;) public void upgrowth()(if (length50)( length+;) growth-;time=time-10;reform();life+=100;if (fenshu0;i-)(mi=mi-1;ni=ni
15、-1;) if (z=4)( m0=m0+10;) if (z=3)( m0=m0-10;) if (z=2)(文案大全實用文檔n0=n0+10;)if (z=1)(n0=n0-10;)public void keyPressed(KeyEvent e)(if (she!= null )(if (e.getKeyCode()=KeyEvent. VK_UP)(if (z!=2)(z=1;check();)else if (e.getKeyCode()=KeyEvent. V(if (z!=1)(z=2;check();)else if (e.getKeyCode()=KeyEvent. V(i
16、f (z!=4)(z=3;check();)else if (e.getKeyCode()=KeyEvent. V(if (z!=3)(z=4;check();)DOWN_LEFT)_RIGHT)文案大全實用文檔) public void keyReleased(KeyEvent e)(/ TODO自動生成方法存根) public void keyTyped(KeyEvent e)(/ TODO自動生成方法存根) public void paint(Graphics g)(*畫圖*g.setC010r(Color.DARK_GRAY;g.f川Rect(0,50,400,400);g.setC010r(Color.pink );for (i=0;i=length-1;i+)(g.fillRect(mi,ni,10,10);)g.setC010r(Color.green );g.f川Rect(objectX,objectY,10,10);g.setC010r(Color.white );g.drawString(當前 分數(shù)+this .life,6,60);g.drawString(當前已吃食物數(shù)+ this .foods
溫馨提示
- 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度工程項目施工圖設(shè)計與審查服務(wù)協(xié)議
- 2025年度國際貿(mào)易仲裁條款專用銷售合同
- 2024-2030年中國電力監(jiān)測設(shè)備行業(yè)市場全景監(jiān)測及投資前景展望報告
- 2025年橡膠棍項目可行性研究報告
- 職工困難申請書
- 2025年度建筑工程施工勞務(wù)人員勞動合同變更合同
- 中國皮卡行業(yè)市場前景預(yù)測及投資方向研究報告
- 測井設(shè)備項目可行性報告范文參考
- 公共建筑節(jié)能評估報告編制的指南2025-圖文
- 2025年度城市基礎(chǔ)設(shè)施建設(shè)項目造價咨詢與監(jiān)理服務(wù)合同范本
- 《新能源汽車技術(shù)》課件-第二章 動力電池
- 拘留所被拘留人員管理教育
- 河南省天一大聯(lián)考2024-2025學(xué)年高三上學(xué)期1月期末地理含答案
- 2024-2025學(xué)年成都市高一上英語期末考試題(含答案和音頻)
- 三坐標考試試題和答案
- 數(shù)字金融 遠程音視頻手機銀行技術(shù)規(guī)范
- 《中藥調(diào)劑技術(shù)》課件- 處方調(diào)配
- 2024屆高考語文一輪復(fù)習(xí):論證思路專練(含答案)
- 2024版醫(yī)院布草洗滌承包合同:醫(yī)療設(shè)施布草清洗外包協(xié)議3篇
- 孩子教育金規(guī)劃
- 2024中考病句訓(xùn)練20題附答案 (一)
評論
0/150
提交評論