




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计说明书 NO.1石头剪子布小游戏1. 课程设计目的Java语言是当今流行的网络编程语言,它具有面向对象、跨平台、分布应用等特点。面向对象的开发方法是当今世界最流行的开发方法,它不仅具有更贴近自然的语义,而且有利于软件的维护和继承。通过此次课程设计,巩固所学Java语言基本知识,增进Java语言编辑基本功,掌握JDK、Editplus、Eclipse、JCreator等开发工具的运用,拓宽常用类库的应用。我们通过该教学环节与手段,把所学课程及相关知识加以融会贯通,全面掌握Java语言的编程思想及面向对象程序设计的方法,为今后从事实际工作打下坚实的基础。通过课程设计可以培养学生综合应用java的各种编程知识和技巧进行程序设计的能力。同时,培养学生自主学习和独立创新的精神,是人才培养体系中极为重要的一环。2. 设计方案论证2.1概要设计2.1.1系统功能描述本游戏的总体任务是要实现玩家与计算机的随机对战过程,使玩家有与真人对战的随机取胜之感。游戏功能分析是在游戏开发的总体任务的基础上完成的。这次设计中的石头剪子布需要完成的功能主要有: (1)当运行完程序后可以自动弹出游戏对话框;(2)当鼠标单击下拉列表时,可以选择自己想选的出拳选项;(3)当点击“出招”按钮时,就会输出游戏结果;(4)本游戏可以累积玩家积分和输赢的局数;(5)当玩家点击“清除积分”按钮时,游戏就会自动将玩家这钱所得的一切积分清零。 沈 阳 大 学课程设计说明书 NO.22.1.2 系统开发环境(1)硬件环境 CPU PII以上PC服务器,内存32MB以上,硬盘15MB以上。(2)软件环境Windows 2000 WindowsXP Windows Server 2003等能安装JAVA2的操作系统。2.2详细设计2.2.1 程序流程图将需求分析所得到的信息抽象为系统功能模块图,如图1所示。石头剪子布小游戏出招选择功能显示结果功能是否继续功能积分处理功能图1 游戏功能模块图 沈 阳 大 学课程设计说明书 NO.3 是否否否是是是否选择下拉列表显示选项与下拉列表中,判断玩家是否单击出招按钮玩家是否单击清除分数按钮累计 分数清除当前积分等待等待显示 游戏 结果和得分结 束开 始图2 游戏功能流程图 沈 阳 大 学 课程设计说明书 NO.42.2.2程序中自定义类说明表2 主要成员方法名称功能描述SmallGame()用于对象的初始化操作构造方法setTitle()命名新建的窗体setLocation()设置窗体的位置setVisible()设置窗体可见kBut.addActionListener(new ActionListener()添加事件监听者表3 主要成员变量成员变量描述变量类型变量名称随机数变量Randomr成员数组String box下拉列表框Combochoice文本框组件Textta标签控件Labellb2.2.3程序中主要方法说明这个程序定义了一些组建,工具栏按钮,文本区和菜单。石头剪子布游戏程序设计通过SmallGame类来实现游戏的整体功能,该java文件是整个系统的主类,起到支柱作用。该类包含main方法, main方法是程序执行的入口,即程序从该类开始执行。其中构造方法SmallGame(),用于对象的初始化操作,成员方法setTitle()作用命名新建的窗体,setLocation() 作用设置窗体的位置,setVisible() 作用设置窗体可见,okBut.addActionListener(new ActionListener() 作用添加事件监听者。 沈 阳 大 学课程设计说明书 NO.53.设计结果与分析3.1 程序运行结果根据以上所述的程序分析,编写代码并运行。由于java程序对各变量的大小写要求比较严格,所以在程序调试阶段花了不少时间,而且程序的运行环境为JDK1.4.2,图形界面的输出要编写大量的代码实现。如果在编程环境为JBuilder,可能会比较简洁一点。图3 运行后的游戏界面当玩家运行完此小游戏程序后出来的界面,此时玩家可以选择自己想选来与计算机对决。 图4 平局时的游戏界面 沈 阳 大 学课程设计说明书 NO.6图5 玩家输了的游戏界面图6 玩家赢了的游戏界面图4-图6为玩家与计算机对决时的三种界面,该游戏还可以累积玩家的得分与正负局数。图7 清空分数后的界面 当玩家不想继续当前游戏时可以清除分数,就可以重新开始新的一局游戏。 沈 阳 大 学课程设计说明书 NO.73.2 尚需解决的问题通过上述过程的设计思想和详细设置,在调试程序时遇到了不少问题,正应了那句编程的老话,程序不是编出来的,而是一步一步调出来的,根据编译结果的提示,一步一步将其改正,最终程序运行正常。不足之处就是此游戏中未能如最初的构想加入石头剪子布的图片,故使此人机对战的娱乐消遣游戏略显平淡,在以后的编程学习过程中一定会找到解决此问题的方法。4.设计体会课程设计是培养学生综合运用所学知识,发现提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新日异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学生来说掌握计算机开发技术是十分重要的。经过一个星期的上机实践学习,使我对java编程语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,回顾起此次课程设计,至今我仍感慨颇多,的确,从理论到实践,可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。 在设计的过程中遇到了许多问题,都是自己平时没有好好听课复习所造成的,但是在老师和同学的帮助下,终于解决了问题,还有就是在程序运行的时候出现的一些小的程序问题,经过同学的帮助修改,终于可以运行了,看着自己劳动的成果,真的很高兴,这门课没有白学。通过实践的学习,我认到学好计算机要重视实践操作,不仅仅是学习java这种编程语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机 。 沈 阳 大 学课程设计说明书 NO.85.参考文献1张思民,梁维娜.Java程序设计实践教程M.北京:清华大学出版社,2006.8:27-302宛延周. Java编程技巧M. 机械工业出版社,2005.1:43-513张杰. Java进阶教程M. 机械工业出版社,2004.9:54-604 郭雪妍. Java语言程序设计M. 机械工业出版社,2003.6:67-805赵文靖. Java程序设计基础与上机指导M, 第2版. 北京: 电子工业出版社, 2003.4:305-3506 赵祖荫. Java程序设计实例教程 M,第1 版. 北京:清华大学出版社2004.9:95-1816. 附录源代码:import java.util.Random;import javax.swing.*;import java.awt.BorderLayout;import java.awt.Container;import java.awt.event.*;public class SmallGame extends JFrame private Random r; private final String box = 剪刀,石头,布; private JComboBox choice;private JTextArea ta; private JLabel lb; private int win=0; private int loss=0; private int equal=0; public SmallGame() setTitle(Small Game); initial(); pack();setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocation(400, 300); setVisible(true); public void initial() 沈 阳 大 学课程设计说明书 NO.9 r = new Random(); choice = new JComboBox(); for(int i=0; ibox.length; i+) choice.addItem(boxi); ta = new JTextArea(3, 15); ta.setEditable(false); JButton okBut = new JButton(出招);okBut.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) ta.setText(getResult(); lb.setText(getTotal(); );JButton clearBut = new JButton(清除分数); clearBut.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) ta.setText(); win=0; loss=0; equal=0; lb.setText(getTotal(); ); lb = new JLabel(getTotal(); JPanel choicePanel = new JPanel(); choicePanel.add(choice); choicePanel.add(okBut); choicePanel.add(clearBut); JScrollPane resultPanel = new JScrollPane(ta); JPanel totalPanel = new JPanel(); totalPanel.add(lb); Container contentPane = getContentPane(); contentPane.setLayout(new BorderLayout(); contentPane.add(choicePanel, BorderLayout.NORTH); contentPane.add(resultPanel, BorderLayout.CENTER); contentPane.add(totalPanel, BorderLayout.SOUTH); public String getResult() String tmp = ; 沈 阳 大 学课程设计说明书 NO.10 int boxPeop = choice.getSelectedIndex(); int boxComp = getBoxComp(); tmp += 你出:t + boxboxPeop;tmp += n电脑出:t + boxboxComp;tmp += n结果:t + check(boxPeop, boxComp); return tmp; public int getBoxPeop(String str) return choice.getSelectedIndex(); public int getBoxComp() return r.nextInt(3); public String check(int boxPeop, int boxComp) String result=; if(boxPeop = (boxComp+1)%3) result=你赢了!; win+; else if(boxPeop = boxComp) resul
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025内蒙古锡林郭勒盟 锡林浩特市迎东口腔门诊部招聘13人备考考试题库附答案解析
- 2025农业农村部在京事业单位招聘43人考试参考试题及答案解析
- 广安市华蓥市2025年下半年“小平故里英才计划”引进急需紧缺专业人才考试参考试题及答案解析
- 2025山东济宁学院招聘二级学院院长3人备考考试题库附答案解析
- 2025年河北唐山芦台经济开发区高校毕业生临时公益性岗位招聘备考考试题库附答案解析
- 济南市教育局所属学校公开招聘2026届部属公费师范毕业生(163人)笔试参考题库附答案解析
- 2025江苏南通市机关事务管理局招聘政府购买服务岗位人员1人笔试备考试题及答案解析
- 2025年山东省水利工程建设监理有限公司公开招聘(8人)备考考试题库附答案解析
- 中医推拿健康宣教课件
- 3山东八年级物理第一学期期中考试试题以及答案(适合沪科版)
- 舞蹈基础教学舞蹈基础知识科普培训PPT教学课件
- 安全教育7不要离家出走
- 最新鲁科版四年级上册英语Unit 4《Lesson 1 Its spring》课件
- 工程项目质量管理手册范本
- 养老机构入住老人服药记录表模板
- 家谱模板,树形图(绝对精品,一目了然)
- 广播电视节目的主持人概念、类型和作用
- 决策分析管理运筹学课件
- 新能源汽车技术完整版课件
- PFMEA密封圈范例
- 广通客车bms通讯协议分册
评论
0/150
提交评论