- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《龟兔赛跑游戏设计
*******************
实践教学
*******************
兰州理工大学
计算机与通信学院
2014年春季学期
工程开发综合训练 课程设计说明书
题 目: 龟兔赛跑游戏设计与实现
专业班级: 计算机科学与技术11级4班
姓 名: 姚 亮
学 号:
指导教师: 刘树群
成 绩:
目 录
摘 要 1
1.问题描述 2
2.系统设计 3
3.系统实现 5
4.系统测试 9
5.总结 14
参考文献 15
摘 要
本次课设我的题目是龟兔赛跑游戏设计与实现。而这个游戏本身实际上主要是对我们JAVA学习中的线程部分的运用,尤其是多线程的定义、运行,Java小程序的编写,图形界面的实现,Java小程序中图片的插入等。同时还要保证此游戏有一个较真实的操作界面和人性化操作设计,所以我在设计过程中重点强调了对线程部分内容的复习和实践。
在设计龟兔赛跑这个游戏中我也遇到了许多的困难,但通过查资料、阅读大量的文献、向老师请教以至于最终问题得以解决。正如龟兔赛跑这个故事一样,虽然我在技术上不是很优秀,但是我不会就此放弃,我会继续努力的学习知识来完善自身的技术。
关键词:Java小程序;多线程;图形界面;画图;背景音乐
1.问题描述
对于龟兔赛跑系统来说,开发的总体任务是实现游戏的可操作性、美观性、及时性。 开发过程遵循软件工程规范,可采用结构化或面向对象分析设计方法。最主要是对学生多线程编程、游戏方案设计、游戏背景及动漫制作等能力进行培养锻炼和对所学的知识进行加深理解,同时还要求保证游戏有比较一个真实的操作界面和人性化操作设计。
另外,通过该题目的设计过程,可以初步应用软件系统的开发原理和开发方法,全面培养软件开发过程中的分析、设计、编码、测试及文档规范书写的能力,加深所学的知识,得到软件工程的训练,提高解决实际问题的能力。
2.系统设计
本系统采用多线程机制来完成,主要有界面模块,乌龟模块和兔子模块
1.功能:实现基本的开始、退出游戏功能、选择游戏模式等
基本运行步骤:
图2-1
在实现过程中会遇到的问题及解决方案:
1.背景面板上加载图片时需要重写paint方法
2.布局根据需要设置(BorderLayout或FlowLayout FowLayout)
3.添加背景面板监听重置各面板位置才能实现窗口放大时的相对位置不变
2各模块.功能:实现乌龟,兔子的多线程运行
具体的步骤:
图2-2
第二步会遇到的问题及解决方案:
1.建立兔子线程,继承接口Thread并正确的实现move()方法。
2.建立乌龟线程,继承接口Thread并实现其move()方法,要与兔子多线程运行;
3.为了实现可选择多只龟兔进行赛跑,要实现多个兔子,乌龟线程,并能并发运行。
4.游戏中提供了模式选择的功能,通过建立ItemSelect类来建立不同的游戏模式。
5.游戏中提供了每个模式重新开始的功能,实现模块重新开始move()方法。
3.系统实现
龟兔赛跑程序主要由以下几个模块构成:
模块一:初始图形界面模块
private Button quit = new Button(退出);
private Button stop = new Button(暂停);
private Button restart1 = new Button(重新开始1);
private Button restart2 = new Button(重新开始2);
private Button model1_start = new Button(模式1开始);
private Button model2_start = new Button(模式2开始);
JLabel l=new JLabel();兔子线程private double xdir = 10;
private boolean running = false;
private SevenPointTwo spt = null;
protected double x, y;
private int flag1=0;
Image tu = Toolkit.getDefaultToolkit().getImage(src\\tu.png);
public Tu(SevenPointTwo _spt, double _x, doubl
您可能关注的文档
最近下载
- 2022年北京市十二中初三(上)期中数学试卷及答案.pdf VIP
- 鲁教版初中九年级化学各章节知识点归纳复习提纲.doc
- 海鲜市场项目可行性研究幻灯片.pptx VIP
- 微电网能量管理:技术、策略与发展路径探究.docx VIP
- 某污水处理工艺设备安装施工方案.docx VIP
- 理智与情感:爱情的心理文化之旅 智慧树网课章节测试答案.docx VIP
- 03.1 20CS03-1 一体化预制泵站选用与安装(一).docx VIP
- 2025年公司组织架构图及各部门职能要求模板参考(架构图可编辑).pdf VIP
- 级配碎石施工技术课件.ppt VIP
- 神话传说故事与中国文化 智慧树 知到答案.docx VIP
文档评论(0)