1、 课程设计课程设计报告书报告书 课程名称课程名称 面向对象程序设计面向对象程序设计 设计题目设计题目 设计一个设计一个 GUIGUI 猜数字游戏程序猜数字游戏程序 目录目录 1 设计时间 1 2 设计目的 1 3 设计任务 1 4 设计内容1 4.1 概要设计 2 4.2 自定义类及接口说明 3 4.3 程序源码 4 4.3.1 程序5 4.3.2 程序运行与调试 .8 5 总结与展望 9 参考文献 10 成绩评定 10 1 1 设计时间:设计时间: 2011 年 6 月 6 日2011 年 6 月 10 日 2 设计目的: 目的在于通过实践加深学生对面向对象程序设计的理论、方法和基础知识的理
2、解,掌 握使用 Java 语言进行面向对象设计的基本方法,提高运用面向对象知识分析实际问题、 解决实际问题的能力,提高学生的应用能力。 3 设计任务: 该游戏可以由程序随机产生四个 0 到 9 之间的整数,且不重复。玩游戏者通过由用户 输入四个数字来匹配上面所产生的数字。A 表示位置正确且数字正确,B 表示数字正确而 位置不正确。 假设随机数据为 3792 时,分析如下 数据: 3792 输入: 1234 0A2B 输入: 5678 0A1B 输入: 0867 0A1B 输入: 9786 1A1B 输入: 1794 2A0B 输入: 2793 2A2B 输入: 3792 4A0B 4 4 设计
3、内容设计内容 4.1 概要设计: 本段代码中主要有 GuessNumber 和 ActionHandler 两个类,程序中设置了 a,b 两个变 量作为对与错数量的显示,并且设置了一个计数器 count 为所猜次数进行计数,设置了监 听接口 ActionAHandler 类来实现,并且用 for 循环和 if 语句来为变量 I,j 服务。后面设 置了一个异常处理,使用 try 和 catch 来捕获异常。使用 GUI 技术实现猜数字和游戏的图 形界面。 4.2 自定义类及接口说明: 类名:GuessNumber 父类:JFrame 作用:实例化对象 主要成员变量:int A=0 /位置和树枝都
4、正确的个数 int B=0 / 数值正确位置不正确的个数 int count /所猜次数计数器 int Random = new int4 /正确的四个数字 int Enter = new int4 /你猜的四个数字 private JTextField tf_1 /定义一个文本区域-用户输入区 private JLabel lb_1 , lb_2 /定义两个标签信息显示区 private JButton btn_1 /游戏按钮 主要成员方法:public GuessNumber() /构造方法 private void newi() /产生四个不相同的数 catch(Exception e)
5、 /捕获例外 public void actionPerformed(ActionEvent event)/设置监听器 setText(“”) /清空文本区域 4.3 程序源码 4.3.1 程序 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GuessNumber implements ActionListener int i,j; int A,B; int a,b,c,d,x,z,y=8; int Random=new int4; int Enter=new int4; TextF
6、ield EnterNum= new TextField(18); TextArea show= new TextArea(5,1); JFrame f=new JFrame(); JButton button1; public void Randomnum() for(b=0;b=0;) for(i=0;i4;i+) Randomi=(int)(10*Math.random(); for(i=0;i4;i+) for(j=0;j=i;j+) if (Randomi=Randomj break; else if (i=3 public void aa(int z) a=z/1000; b=z/100-10*a; c=z/10-100*a-10*b; d=z-1000*a-100*b-10*c;