JAVA课程设计-猜数字游戏.ppt
文本预览下载声明
JAVA课程设计 猜数字游戏 设计内容 基本要求 总体设计 包的描述 类的描述 在设计类的时候,使用了三个类,一个主类MyFrame和两个事件监听类NumberListener和OperatorListener作为程序的整体框架。其中,MyFrame类继承于Frame类,NumberListener和OperatorListener类继承于ActionListener接口,两个事件监听类还是两个内部类。 类的关系 运行效果图 实验中出现的问题 总结 谢谢! * * * * * * 设计一个猜数字游戏程序,该游戏可以由程序随机产生四个0到9之间的整数,且不重复。玩游戏者通过由用户输入四个数字来匹配上面所产生的数字。A表示位置正确且数字正确,B表示数字正确而位置不正确。假设随机数据为3792 时,分析如下 数据: 3792 输入: 1234 0A2B 输入: 5678 0A1B 输入: 0867 0A1B 输入: 9786 1A1B 输入: 1794 2A0B 输入: 2793 2A2B 输入: 3792 4A0B 猜数字游戏,主要解决问题包括编写图形化界面,实现猜数字的功能。猜数字游戏中要实现的主要功能有产生四个不重复的随机数,将随机数与游戏者输入的数字比较得出A(随机数与输入数字的数值相同且位置相同)和B(随机数与输入数字的数值相同但位置不同)的个数。 包的描述 类的描述 类的关系 2 3 1 本程序采用了AWT来实现游戏界面,仅仅引用了Frame类,所以程序简单。程序只需要引用java.awt.*和java.awt.event.*,一个作为各控件的引用包,一个是监听事件的引用包。 功能:包含用于创建用户界面和绘制图形图像的所有类。 事件由事件源所激发。向事件源注册的事件侦听器可接收有关特定事件类型的通知。定义事件和事件侦听器,以及事件侦听器适配器,它是让事件侦听器的编写过程更为轻松的便捷类。 = int i //标识,控制点击数字显示在相应TextField int f //标识,控制程序产生四个不同随机数 int f1 //标识,控制A、B结果的显示 int A //计数,随机数与输入数数值和位置都相同的数字个数 int B //计数,随机数与输入数数值相同但位置都不同的数字个数 int Enter[] //存储游戏者输入的四个数字 int Arr[] //存储程序产生的四个随机数 TextField tf1,tf2,tf3,tf4 //显示输入的数字 TextField tf5,tf6 //显示A、B结果 Panel p1,p2,p3,p4 //容器 Button b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,11,b12 //按钮 Label l1,l2 //显示A、B public MyFrame() //实现游戏界面 public void NumStore(ActionEvent e2) //游戏者输入四个数字,显示并存储 public void EventClick(ActionEvent e3) //对相应事件作相应处理 public static void main(String[] args) //实例化对象 ActionEvent e2 //产生监听事件的对象 public void actionPerformed(ActionEvent e2) //对触发事件的对象进行事件处理 ActionEvent e3 //产生触发事件的对象 public void actionPerformed(ActionEvent e3) //对触发事件的对象进行事件处理 其中ActionListener是用于接收操作事件的侦听器接口。继承自EventListener。 1.对netbeans的使用生疏。 2.对于GUI编程语法不熟。 3.最终实现的界面不够美观 4.调试过程中出现不兼容问题 5.对构造方法,接口方法掌握不牢,实验过程中花费较多时间 解决方法: 1.借阅专业书籍 2.网上咨询(查找)相关代码 本次Java的课程设计难点在于大家对Java的学习尚停留在较浅的层次上。此次GUI的图形界面设计,Java的异常处理机制,还有事件监听等,对于我们来说是个不小的挑战。但通过这次的课程设计,我们对Java的基础知识进行了巩固,并对Java图形用户界面设计、Java的异常处理机制等方面有了更深入的了解,并基本掌握了netbeans的使用,收获很多。 * * *
显示全部