Java程序设计报告《贪吃蛇》_第1页
Java程序设计报告《贪吃蛇》_第2页
Java程序设计报告《贪吃蛇》_第3页
Java程序设计报告《贪吃蛇》_第4页
Java程序设计报告《贪吃蛇》_第5页
已阅读5页,还剩19页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、«Ja V a程序设计课艮程设计报告题 目:贪吃蛇游戏得设计与实现指导老师:沈泽刚专业:计算机科学与技术班级:10 3姓名:梁潇课程设计目得贪吃蛇游戏一款非常经典得手机游戏,因为它比较简单有趣,无论老少都比较适合。目得就是更好地了解与掌握java语言,并熟练 得运用J ava语言来实现项目。培养自主学习得能力本软件在设计方面本着方便、实用及娱乐性高得宗旨,在外界进 行设计得过程中,始终坚持清晰明了,在性能方面能够实现效率高, 不易出错等优点.课程设计要求贪吃蛇游戏设计与实现,主要分为以下二个模块:游戏主界面模块、游戏控制模块。课程设计报告内容(一)系统设计1 、程序概述本程序就是一个

2、利用 Java 应用软件制作得贪吃蛇小游戏。在游戏过程中,用户通过点击小键盘区得方向键来控制蛇得运行方向;当蛇没有吃到食物且碰到墙壁或自己得身体时游戏结束。本程序得另一个功能就是在程序运行窗口得左上角显示, 用户在游戏过程中所得得分数,不过缺点就就是在退处程序后 , 下次打 开程序时无法保存。2、游戏得主界面设计游戏得主界面就是进入游戏后,能够给玩家第一感官得部分,主要包括游戏图形区域界面、 游戏得速度选择更新界面、 游戏分数得 显示更新界面、游戏开始按钮、暂停游戏按钮、退出游戏按钮以及游 戏排行榜按钮。3 、游戏控制模块设计这个模块就是游戏得中心环节 , 主要完成控制游戏得开始、暂停、退出等

3、功能。为了能够给玩家一个很好得游戏环境,这部分应 该做到易懂、易操作。( 二) 主界面设计游戏界面主框架主要包括游戏图形区域界面、 游戏得开始按钮、暂停按钮、游戏得退出按钮、 困难程度、积分排行、 关于作者。( 三 ) 代码设计im p o r t j a v a、awt、G raphi c s;im p ort j av a、awt 、Color ;i mpo rt javawt、Co nt a i n er ;i mpor t j a v a、awt、Toolkit;importj a va、awt、e ven t、Action Even t ;rt j av a、a wt、eve nt

4、、Acti onList ener ;i m portjava、awt、eve nt、I n p ut Evenim p orj a v a、awt、e ven t、KeyEv ent;i mp ortj ava、a w t、eve nt 、Ke y Li s te ner;i mporjavng、p ublicc lass Tan ChiSh ee x ten d s JFram e implementsActio nL is t ene r , Key L istene r ,Ru nnablep rivaJM e nu B a r men uBar ;p rivateJMenu you

5、X iMen u ,nan Du Menu,fe n ShuM e nu , guanYuMe nu;priv a teJM enu I t em k aiS hi YouX i,ex i tI t em,zuoheItem ,fenShuItem;pr i V at e JCheckBo x Me n u I tem cj ia nD a n , c P uT o ng, cunNa n;p rivate int 1 ength = 6;pr iva te Toolki t too lk i t;pr i va t e inti,x,y , z, objec t X, o bjec t Y

6、,ob j ect= 0, grwth=0 , time;p riva te inti ffi c ult = 2 ;p r i V a te intm = n e w i nt 50;p ri V a t e int n=n e w int 50pr ivateThread s he = n ull ;pr i vateint lif e= 0;p ri va te in tfo o ds =0;pr i vateint fen s h u=0;publi cV oid run( ) /运行:;tim=50 0;(i=0; i < = length- 1;i+)m i=90 i * 1

7、0;n i= 6 0;=m0;y=n 0 ;=4 ;wh il e (she != n ull )che ck();try s he、si e ep (tiatch(Except i on ee)S y stem、 o ut、p r i n t In (z+ ""public Tan C hi S h e()/* * * 创建新对象 * * * * * * * *s e tV isible (tr u e);m e nuBar =new J Men u Ba r();C o ntainer con = ge tCont ent P ane ();toolkit=getToo

8、lkit();/ * * * * * 游戏菜单对* * * * * * * * * * * * * * * *youXiMe nu =n e w JMenu("游戏");kai ShiY ou X inew J Me nu It em("开始游戏");e X itI t emnew J Me n uItem (”退出游戏”);/ / * * * * * * * * * * * 困难程度对象 * * * * * * * * *n a nD u Me nune w JMe nu ("困难程度");cJia n Da n =n e w J

9、Che ckBo x Menul t em("简单");cPu T on gn ew JCh e ckB o x MenuIt e m("普通");c K u n Na n = n ew J Ch e ck Bo xMe n uI te m (" 困难");/ /* * * * * * * * * 分数菜单对象* * * * * * *fen S huMenun ew JMe n u ("积分排行”);fe n ShuItemnew JM e nul t e m("最高记录");/* * * * * *

10、* * * * * 关于对象* * * * * * *guanYu Menunew JM e n u("关于”);* * * * -ku oZheIte mewJ Menu I tem( ”关于作者”);/ * * * g uanYuM e nu、adn anD u Menu、a ddnanDuMenu 、 ad dnanDuMenu、 ad/ * * * 设置关于菜单 * * * * (zuoZh eI t em);* 设置困难程度菜单 * * * * (cJ i a n Dan);(cPu To ng);d (cKunNan );设置分数菜单 * * *f e nSh uMenu

11、、 add(fen Sh uI t em);/* * * *设置游戏菜单 * * * *youXiMenu、ad d (kai ShYou Xi );youXiMenu、ad d (e x i tIt e m) ;/ * * * * * * 设置主菜单 * * * * * *menuB a ra d d( you Xi Men u);men u Baadd ( nan DuMenu ) ;me n u B aadd ( f e nS hu M enu);menuB ar、addguanY u Men u) ;/ * k -k * * * 监听注册 * * zuoZheIt em、 ad dAc

12、 tionLis ten er( this );stener( th is ) ;kaiS h iYouXi 、addActionL iexitItem、 addActi o nListene r( this );ad dK eyListenerthi s );fenShuIt em、addActionLis ten e r( th is ); /* * * * * * * * 加快捷键 * * * * * *X', InputE v ent、CTRL_DOWN_MASK);ex itIem、s e t A cceler a tor (key E x i t);/ * * * * *

13、设置框架 * * *s et JM e n uB ar(m e nu B ar);setTitle”贪吃蛇 ");o ke ('OSt r oke ( '* *Key S t r o ke k e y Open = Key Str oke、get K eyStr ',I np u tE V ent、CT RL_ D OWN_MASK ;kai S hiYo u Xi、setAc c ele r ator(k e yOpen );tr oke k ey Exi t = KeySt ro ke、 get KeysetResizab 1e( false ) ;set

14、Bounds(3 0 0,2 00 ,4 00 ,4 00);va 1 ida t e ();s e t De faultCloseO pe ra tio n( EXIT _O N_CLOSE );p ub lic s ta t ic voi d main(Strin g a r gs )ne w Ta nChi S he();/* 菜单监听 * * * * * *pu b lic V oi dnP erform e d (Ac t i o n Ev e nt e )f(e 、g et S ource=kaiSh i YouXi )lengthlife0;fos = 0;if (he = =

15、null )she=new Threa dthih e、s t art();seif (sh e != n ushe=ul 1 ;she=new T hre ad (this );ifshe 、st art()(e、g et S o u rce () = = ex itIt em)y stem、exi t (0);f (e、ge tS our c e () = = zuo Z he I te m)ifJ OptionPane、sh ow Me ssag e Dialog (this ,"梁潇n n");(e 、get S ourc e=fe n Sh u Item )J O

16、ptionPaneshowMess a geDi a log (t h i s , ” 最高记录为”+fnshu+ ”); / * * 检查一下 * * * * * * * * * * *p ublic v o i d check(isDeif(s h e!=null )if(growth =0)e fo rm() ;elseup gr owth();if (x=ob j ec tX&& y= = ob j ectY )o bject=0g row t h=1;too 1 kit 、beep () * * * * 产生食物坐标 * * *i f (ob jec t= = 0)o

17、bject=1o b j ec tX =( i n t )Mat h、 f loor (Mat h、r a n dom () *3 9 ) 10;t Y= ( in t)Ma th、floo(Mat h、 random () *29) 10+50 ;this 、re p a in t ();voidisDea d()i f (z= 4)x =x+1 0;elif ( z =3)x =x-10 ;else if(z= = 2)elsify=y+ 10;e i f (z=1 )y= y -10x<0|x 390|he= nu II ;f o r (i= 1; i < Iif (m i

18、= = xy 50| ye ngth ; i+ni=y3 90)she=nu II ;p ubl i cvoid up g r owth()i f (leng t h <50)le n gt h+ ;growthtime=tme 10;reform);l i fe+=1 00 ;if (fenshu< 1 i f e)lifefenshufo o ds+;pu b lievoid reform()(i= 1 eng t h-1 ;i0; i -)m in i : = ni 1;if (z=4 )m 0= m 0 +10 ;if0=m010;if0: =n 0 +10 ;if(z =

19、1 )n0 =n 0 1 0;p ublicvoid k eyP ress e d( K e y Eve nt e )ifif ( s h e! =null )(e、g e tKeyCod e() = = Ke y E vent、VK_U P)(z! =2 )he ck();e lse i f (e、get Ke y Co de()=KeyEven t、VK_DO WNelsez!heifz!c k();(e、g etKeyCode () =Ke yE ven t 、 VK _LEFT )=4)h eck( );e ise i f (e、g e tKe y Code() = =KeyE ve n t、VK_RIGHT)z!=3 )z =4;heck();publicv o id key R e 1e a s ed (KeyEv e nte)/T ODO自动生成方法存根publc voidk eyT yp ed( Key Eve nt e/TOD O自动生成方法存根p ubl i cV oip aint

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论