《java程序大作业 - 记忆测试系统》 - 图文
成绩: 评语:
华南理工大学广州学院 2012-2013学年度第一学期
课程名称: 面向对象程序设计大作业 项目题目: 记忆测试系统 专业班级: 年 级: 2011级 姓 名: 学 号:
1 / 30
目录及程序设计说明书
1.1设计要求?????????????????????? 1.2总体设计??????????????????????3
1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6
MemoryGame.java(主类)??????????????????? MemoryTestArea.java ????????????????????? Block.java ?????????????????????????? Record.java ????????????????????????? ShowRecordDialog.java ???????????????????? People.java ??????????????????????????
1.3 详细设计 ??????????????????????4
1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7
MemoryGame类 ????????????????????????4 MemoryTestArea类 ??????????????????????10 Block类 ??????????????????????????18 ShowRecordDialog类 ?????????????????????19 People类 ??????????????????????????23 Record类 ???????????????????????????25 图像文件 ???????????????????????????28
1.4 课程设计总结 ????????????????????30
(参考文献 ??????????????????????????????)
2 / 30
1.1设计要求
记忆测试系统是通过回忆法测试记忆能力,测试手段分为初、中、高三个级别。 记忆测试系统设计要求如下:
(1)单击“选择级别”菜单可以选择级别。
(2)单击“查看排行榜”菜单可以查看初级、中级、高级记忆排行榜,通过记忆榜存储每个级别的成绩。
(3)选择级别后,将出现相应级别的测试区。测试区由m×n个方块组成,程序通过设置m和n的来确定相应的测试级别。如对于初级级别,m=5,n=6。每个方块上都有一个图标,但该图标默认不可见。用鼠标单击测试区域中的任何一个方块,则计数器开始启动,同时该方块上的图标将显示出来。
(4)m×n个方块组成的测试区域中有m个图标,每个图标出现n次,并且随机分布在测试区中的m×n方块上。用户必须用鼠标连续单击出n个图标相同的方块,也就是说,如果用户已经用鼠标连续单击出p(p (5)测试区能显示用户的用时,并根据级别的不同,提示用户必须用鼠标连续单击出多少个图标相同的方块。 (6)测试区有提示图标所在位置的功能。用户单击测试区中的“提示”按钮后,测试区将持续1.2秒为用户显示全部的方块上图标。用户每单击一次“提示”按钮,用户的用时将增加10秒。 (7)连续单击出级别所要求的若干图标相同的方块后,将弹出保存成绩对话框,用户可以通过该对话框选择是否将自己的成绩保存到成绩表中。 (8)单击“选择图标”菜单可重新选择方块的图标样式,即可以重新选择m个图标。 1.2总体设计 在记忆测试系统中,可以编写6个java源文件:MemoryGame.java、MemoryTestArea.java、Block.java、ShowRecordDialog.java、Record.java和People.java。 记忆测试系统除了上述6个java源文件产生的类之外,还需要java系统提供一些重要的类。记忆测试系统所用到的一些重要的类以及之间的组合关系如图1.1所示。 MemoryGame String File MemoryTestArea ShowRecordDialog File TreeSet 3 / 30 图1.1 类之间的组合关系 以下是6个java源文件的总体设计。 1.2.1 MemoryGame.java(主类) MemoryGame类负责创建记忆测试系统的主窗口,该类含有main方法,记忆测试系统从该类开始执行。MemoryGame类有4种重要类型的对象,分别是String、File、MemoryTestArea和ShowRecordDialog对象。MemoryGame类创建的窗口对象以及其中的主要成员对象如图1.2所示。MemoryGame类的主要成员的作用将在后面的详细设计中阐述。 1.2.2 MemoryTestArea.java MemoryTestArea类是主类MemoryGame窗口中的一个JPanel容器,所创建的对象称为“测试区”,这个“测试区”被添加到MemoryGame窗口的中心。MemoryTestArea主要有6种类型的成员:ArrayList 1.2.3 Block.java Block类是JButton的子类,负责为MemoryTestArea类中的Array 1.2.4 Record.java Record类是javax.swing包中的JDialog对话框的子类,当用户成功单击出相应级别所要求的图标相同的方块后,Record创建的对象负责保存用用户的名字和成绩到相应的级别文件中。 1.2.5 ShowRecordDialog.java ShowRecordDialog类是javax.swing包中JDialog对话框的子类,当用户单击“查看排行榜”时,ShowRecordDialog创建的对象负责显示用户的成绩。 1.2.6 People.java People对象封装用户的名字和成绩,以便ShowRecordDialog对象可以按成绩的高低排序用户。 1.3详细设计 1.3.1 MemoryGame类 1. 效果图如下: 4 / 30 MemoryGame创建的窗口 2. UML图 MemoryGame类是javax.swing包中JFrame的一个子类,并实现了ActionListener接口。该类的主要成员变量和方法如下图: JFrame ActionListener MemoryGame bar:JMenuBar imageName:String[] menuGrade,menuResult,menuIcon:JMenu memoryArea:MemoryArea oneGradeItem,twoGradeItem,threeGradeItem:JMenuItem showDialog:ShowRecordDialog oneGradeResult,twoGradeResult,threeGradeResult:JMenuItem m,n:int carImageIcon,animalImageIcon:JMenuItem fileOneGrade,fileTwoGrade,fileThreeGrade,gradeFile:File MemoryGame():无类型 actionPerformed(ActionEvent):void mian(String[]):void MemoryGame类的UML图 以下是UML图中有关数据和方法的详细说明。 5 / 30
相关推荐:
- [基础教育]2016-2022年中国钢芯铝绞线市场现状调
- [基础教育]语文部编版初一语文下册练习题 句式变
- [基础教育]南京继续教育参考答案--深入学习贯彻习
- [基础教育]国旗下讲话稿——珍惜时间好读书
- [基础教育]北师大版六年级数学下册圆锥的体积教学
- [基础教育]人教版-音乐-四年级下册-四年级下册音
- [基础教育]乔布斯2019年斯坦福大学毕业典礼致辞.d
- [基础教育]2015年加油站安全知识竞赛试题及答案
- [基础教育]2020年教师年度考核个人工作总结
- [基础教育]2019年中考历史试题-2019年大庆市初中
- [基础教育]初三仁爱英语第一轮总复习教案
- [基础教育]SG-A094电气配管安装工程隐蔽验收记录
- [基础教育]冀教版小学数学三年级下册第六单元教材
- [基础教育]青岛版(五制)小学科学二年级下册16《制
- [基础教育]2018-2019年初中科学初一中考真卷测试
- [基础教育]幼儿园大班期末简短评语精选
- [基础教育]2018云南临沧公务员考试申论技巧:这样
- [基础教育]学校食堂经营管理方案
- [基础教育]新中国砥砺奋进的七十年原文
- [基础教育]真空泵的选型及常用计算公式
- 高职田径课程教学现状与对策
- 全髋关节置换术在老年股骨颈骨折患者中
- 青人社厅函〔2016〕576号(附件)工资
- cp101-07砂子检验作业指导书 - secret
- 微观经济学 第八章 博弈论 习题
- 2014高考真题(词语运用)汇编及答案
- 2018年人教版七年级语文下册《第三单元
- 苏教版数学四年级上册第一单元试题 - M
- 四川大学新闻与传播考研2000-2010年真
- 浙江万里学院英语专业四年制本科教学计
- 最新2018马年事业祝福语-范文word版(2
- 最全模具行业术语英文翻译
- 皮亚杰的发展心理学理论
- 64篇高考情景式默写 练习题及答案
- 仿写(学生稿)
- 《SQL Server数据库技术》试卷A
- 第七章作业答案
- 江苏省赣榆县海头高级中学高中语文必修
- 浙江省2001年10月自考正常人体解剖学答
- 2012英语重点短语




