1、(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(
2、)设置窗体可见kBut.addActionListener(new ActionListener()添加事件监听者表3 主要成员变量成员变量描述变量类型变量名称随机数变量Randomr成员数组String box下拉列表框Combochoice文本框组件Textta标签控件Labellb2.2.3程序中主要方法说明这个程序定义了一些组建,工具栏按钮,文本区和菜单。石头剪子布游戏程序设计通过SmallGame类来实现游戏的整体功能,该java文件是整个系统的主类,起到支柱作用。该类包含main方法, main方法是程序执行的入口,即程序从该类开始执行。其中构造方法SmallGame(),用于对象
3、的初始化操作,成员方法setTitle()作用命名新建的窗体,setLocation() 作用设置窗体的位置,setVisible() 作用设置窗体可见,okBut.addActionListener(new ActionListener() 作用添加事件监听者。课程设计说明书 NO.53.设计结果与分析3.1 程序运行结果根据以上所述的程序分析,编写代码并运行。由于java程序对各变量的大小写要求比较严格,所以在程序调试阶段花了不少时间,而且程序的运行环境为JDK1.4.2,图形界面的输出要编写大量的代码实现。如果在编程环境为JBuilder,可能会比较简洁一点。图3 运行后的游戏界面当玩家
4、运行完此小游戏程序后出来的界面,此时玩家可以选择自己想选来与计算机对决。图4 平局时的游戏界面课程设计说明书 NO.6图5 玩家输了的游戏界面图6 玩家赢了的游戏界面图4-图6为玩家与计算机对决时的三种界面,该游戏还可以累积玩家的得分与正负局数。图7 清空分数后的界面 当玩家不想继续当前游戏时可以清除分数,就可以重新开始新的一局游戏。课程设计说明书 NO.73.2 尚需解决的问题通过上述过程的设计思想和详细设置,在调试程序时遇到了不少问题,正应了那句编程的老话,程序不是编出来的,而是一步一步调出来的,根据编译结果的提示,一步一步将其改正,最终程序运行正常。不足之处就是此游戏中未能如最初的构想加
5、入石头剪子布的图片,故使此人机对战的娱乐消遣游戏略显平淡,在以后的编程学习过程中一定会找到解决此问题的方法。4.设计体会课程设计是培养学生综合运用所学知识,发现提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新日异,当今计算机应用在生活中可以说得是无处不在。因此作为二十一世纪的大学生来说掌握计算机开发技术是十分重要的。经过一个星期的上机实践学习,使我对java编程语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,回顾起此次课程设计,至今我仍感慨颇多,的确,从理论到实践,可以学到很多很多的的东
6、西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。 在设计的过程中遇到了许多问题,都是自己平时没有好好听课复习所造成的,但是在老师和同学的帮助下,终于解决了问题,还有就是在程序运行的时候出现的一些小的程序问题,经过同学的帮助修改,终于可以运行了,看着自己劳动的成果,真的很高兴,这门课没有白学。通过实践的学习,我认到学好计算机要重视实践操作,不仅仅是学习java这种编
7、程语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机 。课程设计说明书 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
8、 赵祖荫. 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;p
9、rivate 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();
10、 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(); );JBut
11、ton clearBut = new JButton(清除分数 clearBut.addActionListener(new ActionListener() ta.setText( win=0; loss=0; equal=0; lb = new JLabel(getTotal(); JPanel choicePanel = new JPanel(); choicePanel.add(choice); choicePanel.add(okBut); choicePanel.add(clearBut); JScrollPane resultPanel = new JScrollPane(ta)
12、; 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 Stri
13、ng getResult() String tmp = ;课程设计说明书 NO.10 int boxPeop = choice.getSelectedIndex(); int boxComp = getBoxComp(); tmp += 你出:t + boxboxPeop;tmp += n电脑出: + boxboxComp;n结果: + check(boxPeop, boxComp); return tmp; public int getBoxPeop(String str) return choice.getSelectedIndex();public int getBoxComp() re
14、turn r.nextInt(3);public String check(int boxPeop, int boxComp) String result= if(boxPeop = (boxComp+1)%3) result=你赢了! win+; else if(boxPeop = boxComp) 平 equal+; else 你输了! loss+; return result; public int getPoint() return (win-loss)*10; public String getTotal() return 赢: + win + 平: + equal + 输: + loss + 得分: + getPoint();public static void main(String args) SmallGame game = new SmallGame();
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1