- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE 22
《JAVA游戏开发》课程设计报告
题 目 网络益智游戏
姓 名:
云红卫
学 号:
081012130
专 业:
软件技术
班 级:
软件082
计算机科学与技术系
2009年6月
目 录
TOC \o 1-2 \h \z \u 1 实践过程概述 4
2 课程设计题目描述 4
3 系统需求分析与设计 4
3.1 系统需求分析 4
3.2 系统设计 4
4 系统测试和使用说明 7
4.1 系统测试 7
4.2 系统使用说明 8
5 课程设计总结 8
5.1 遇到的问题和解决方法 8
5.2 心得体会 9
6 参考文献 9
7 附录 10
网络益智游戏
1 实践过程概述
此次软件技术专业JAVA游戏开发课程设计于2009年6月在实验楼三楼机房进行,持续时间为两周。本次课程设计主要是利用所学的面向对象程序设计语言——JAVA来编写程序,实现特定功能,以加深对JAVA的理解。
2 课程设计题目描述
我们设计的网络益智游戏:是一台计算机做服务器产生一个随机数和随机字母,另一台计算机做客户端来猜。
3 系统需求分析与设计
3.1 系统需求分析
随着现在生活节奏的不断加快,现在许多的人们在工作之余,需要通过一些益智小游戏,来调节一下自己的情绪,释放一下自己的疲劳。而网络益智游戏正好符合人们的要求,它不需要你过多的去思考答案,只是轻松一下紧张的神经,放松一下心情,就像开心农场一样,在人们的工作之余调节一下。
3.2 系统设计
3.2.1 系统总体设计
系统功能分析
本系统要用到以下的Java编程技术实现的功能:
① 网络功能:这一程序将由一个服务器程序和一个客户端程序构成。客户端用来猜测随机字母和随机数的大小。服务器用来产生随机字母和随机数,来确定是否猜中。
②多线程功能:当客户端要求与服务器端建立连接时,服务器端就将用到多线程功能,为每一个建立起来的连接创建一个线程。
3.2.2 程序详细设计
(1)程序框架
本系统的程序框架主要包括服务器端和客户端两部分。
服务器端
服务器端通过类和方法来产生随机字母和随机数,来判断客户端送过来的答案是否正确。
客户端
客户端通过类和方法来连接服务器,并把猜测的答案发送到服务器,并接受服务器判断之后的结果。
基本类的设计:
Server类
Server服务器类,其中定义了6个成员变量和5个成员方法。serv变量用于存储套接字,port变量存储端口号,info数组存放接收到的数据包中的信息,rec变量存储接收到的数据包,snd变量存储要发送的数据包,msg变量存储要发送或提取出的信息。main()方法是主方法,用于创建套接字,选择要进行的游戏;guessZimu()方法用于进行猜字母游戏;guessPro()方法用于进行猜大小游戏;judge()方法用于判断试猜答案的匹配情况,并将结果返回给客户端;getZimu()方法是用来生成随机字母。
在main()方法中,首先将参数转化为端口号,据此创建一个套接字。然后等待客户端的数据包,收到的第1个数据包中包含的是该客户端的IP地址,将其输出。接着,就开始与客户端进行交互。先发送消息,让客户端选择要玩的游戏,客户端将作出的选择封装在数据包中发回。如果客户但回复的是“quit”指令,则终止程序,关闭套接字;如果是“1”,代表选择猜字母游戏,调用guessZimu()方法;如果是“2”,代表选择猜大小游戏,调用guessPro()方法。
GuessZimu()方法是进行猜数字的游戏,先调用getZimu()方法,生成一个随机字母,并输出。游戏者有10次试猜机会,每次接收到包含试猜答案的数据包后,都先把试猜答案输出,再调用judge()方法判断答案的匹配情况。如果答案完全匹配,返回答案正确的提示信息,否则继续进行游戏。如果超过10次未猜对,也结束游戏,并向客户端返回正确答案。
judge()方法是判断试猜答案与正确答案匹配情况的方法,组合答案匹配情况的信息,存储到字符串msg中,并封装到数据包发送给客户端。如果答案完全匹配,则返回1,否则返回0。
getZimu()方法是用来生成随机数序列的,它创建了一个Random类对象,并调用它的nextInt()方法来生成随机数。每次生成的随机数,都要与已生成随机数比较,如果有重复,则重新生成,直到不与已生成的随机数重复。
guessPro()方法是用来进行猜大小游戏的,它创建了一个Random类对象,并调用它的nextInt()方法来生成一个0~100之间的随机数,存放到num变量中,并输出。游戏者有10次试猜机会,每次接收到包含试
您可能关注的文档
- 数据结构实验三哈夫曼编码.doc
- 思修实践报告.doc
- 3D数学throwball实验报告.doc
- 学乐器的好处英语作文.doc
- 施工组织实训总结 (2).doc
- 车站实训日记.doc
- 现代教育技术学实验报告1.doc
- THBDC-1计算机控制技术实验指导书(A4).doc
- 关于高一年级学生对信息技术的态度 的调查报告.doc
- 关于医患关系的调查报告.doc
- 2025年无人机低空医疗物资投放社会效益报告.docx
- 2025年再生塑料行业包装回收利用产业链重构研究.docx
- 《AI眼镜周边产品市场机遇:2025年终端销售与需求增长洞察》.docx
- 2025年坚果加工行业深加工技术突破与市场拓展策略报告.docx
- 2025年通信芯片行业技术竞争与未来趋势报告.docx
- 《2025年生鲜电商配送冷链事故分析与预防措施》.docx
- 《商业航天融资新趋势2025民营卫星企业资本涌入估值分析市场动态》.docx
- 2025年能源绿色健康行业创新技术与市场应用报告.docx
- 2025年无人机低空医疗救援通信方案分析报告.docx
- 2025年烹饪机器人行业市场集中度分析报告.docx
最近下载
- 地利亚修女纪念学校(协和).doc VIP
- 2025年无人机驾驶员执照航路规划低空经济发展与航路规划专题试卷及解析.pdf VIP
- 油层物理期末试题卷七套.pdf VIP
- 2025年互联网营销师视频营销终极模拟测试专题试卷及解析.pdf VIP
- 右手五指练习 17《孩子们的拜厄 (上)》钢琴谱钢琴简谱 数字谱 钢琴双手简谱.pdf VIP
- T_HSSIA 2025—004(堤坡生态治理复合装配式连锁笼).pdf
- 文件传输协议(TFTP)在设备更新失败下的GNN补偿机制.pdf VIP
- 2025年互联网营销师私域社群活跃度与健康度数据分析专题试卷及解析.pdf VIP
- 2025年特许金融分析师单样本与双样本检验专题试卷及解析.pdf VIP
- 2025年特许金融分析师行业进入与退出壁垒评估专题试卷及解析.pdf VIP
原创力文档


文档评论(0)