记忆测试系统--java课程设计.doc
面向对象程序设计课程设计报告题目记忆测试系统院(系)信息科学与工程学院专业班级计算机科学与技术1201班学生姓名程伟学号20121183011指导教师吴奕2014年12月29日至2015年1月9日华中科技大学武昌分校制面向对象程序设计课程设计任务书一、设计(调查报告/论文)题目记忆测试系统二、设计(调查报告/论文)主要内容内容本游戏是通过由用户点击图片显示出图片后,如果是相同的,便保持图形,如果用户点开的是不同的图片则先前点击的图片被清空。当用户同时点击出规定数目的图片后,弹出保存成绩框。基本功能与要求记忆测试系统是通过回忆法测试记忆能力,测试手段分为初级、中级、高级三个级别。1、单击“选择级别”菜单可以选择初级、中级或高级。2、单击“查看排行榜”菜单可以查看初级记忆榜、中级记忆榜或高级记忆榜,通过记忆榜存储每个级别的成绩。3、选择级别后,将出现相应级别的测试区。测试区由MN个方块组成,程序通过设置M和N的值来确定相应的测试级别,例如,对于初级级别,M5,N6。每个方块上都有一个图标,但该图标默认不可见。用鼠标单击测试区中的任何一个方块,则计时器开始启动,同时该方块上的图标将显示出来。4、MN个方块组成的测试区中有M个图标,每个图标重复出现N次,并且随机分布在测试区中的MN各方块上。用户必须用鼠标连续单击出N个图表相同的方块,也就是说,如果用户已经用鼠标连续单击出P(P、STRING、RECORD、TIMER、FILE和THREAD对象。113BLOCK类BLOCK类是JBUBTTON的子类,负责为MEMORYTESTAREA类中的ARRAYLIST数组表提供BLOCK对象。114RECORD类RECORD类是JAVAXSWING包中JDIALOG对话框的子类,当用户成功单击出相应级别所要求的图表相同的方块后,RECORD创建的对象负责保存用户的名字和成绩到相应的级别文件中。115SHOWRECORDDIALOG类SHOWRECORDDIALOG类是JAVASWING包中JDIALOG对话框的子类,当用户单击“查看排行榜”时,SHOWRECORDDIALOG创建的对象显示用户的成绩。116PEOPLE类PEOPLE对象封装用户的名字和成绩,以便SHOWRECORDDIALOG对象可以按成绩的高低排序用户。2详细设计操作界面设计编译运行,选择级别,图标游戏开始,如果用户不清楚相同图标的位置时,点击提示。界面方案窗口大小SETBOUNDS100,100,400,360;SETVISIBLETRUE;字体的大小和颜色HINMESSAGESETFONTNEWFONT“宋体”,FONTBOLD,18;布局控制又上到下,先是菜单选择级别,查看排行榜,选择图标;提示信息HINTMESSAGESETTEXT“您需要用鼠标单击出”COL“个同样图标的方块”;图标随机排布,有MN个方块随机分布,下面是一记录用户时间以及提示按钮,提示用户相同图标的位置。程序流程图如图23所示21MEMORYGAME主类MEMORYGAME创建窗口如图13所示图13MEMORYGAME创建窗口MEMORYGAME主类与其他类间的交互关系如图14所示图14MEMORYGAME主类与其他类间交互关系22MEMORYTESTAREA类MEMORYTESTAREA创建的测试区如图15所示图13MEMORYTESTAREA创建的测试区MEMORYTESTAREA类与其他类间的交互关系如图16所示图16MEMORYTESTAREA类与其他类间交互关系23BLOCK类BLOCK类创建的按钮如图17所示A图标不可见时的方块B图标可见时的方块图17BLOCK创建的按钮BLOCK类与其他类间的交互关系如图18所示图18BLOCK类与其他类间交互关系24SHOWRECORDDIALOG类SHOWRECORDDIALOG类与其他类间的交互关系如图110所示图110SHOWRECORDDIALOG类与其他类间交互关系25PEOPLE类PEOPLE类对象中的数据使用户的姓名和成绩,被显示在SHOWRECORDDIALOG对话框中SHOEAREA的文本区中,如图111所示图111PEOPLE类在排行榜中的数据PEOPLE类与其他类间的交互关系如图112所示图112PEOPLE类与其他类间交互关系26RECORD类RECORD类创建的保存成绩对话框,如图113所示图111RECORD类创建的保存成绩对话框RECORD类与其他类间的交互关系如图114所示图114PEOPLE类与其他类间交互关系3编码实现31MEMORYGAME主类代码PUBLICCLASSMEMORYGAMEEXTENDSJFRAMEIMPLEMENTSACTIONLISTENER{PUBLICSTATICVOIDMAINSTRINGARGS{NEWMEMORYGAME}//声明BAR菜单条JMENUBARBAR//声明BAR创建的三个菜单对象JMENUMENUGRADE,MENURESULT,MENUICON//声明菜单”选择级别“的三个菜单项对象JMENUITEMONEGRADEITEM,TWOGRADEITEM,THREEGRADEITEM//声明菜单”查看排行榜“的三个菜单项对象JMENUITEMONEGRADERESULT,TWOGRADERESULT,THREEGRADERESULT//声明菜单”选择图标“的两个菜单项对象JMENUITEMCARIMAGEICON,ANIMALIMAGEICON//声明文件对象FILEFILEONEGRADE,FILETWOGRADE,FILETHREEGRADE,GRADEFILE//声明图像文件的名字STRINGIMAGENAME//声明测试区对象MEMORYTESTAREAMEMORYAREA//创建显示成绩的对话框SHOWRECORDDIALOGSHOWDIOLAGNULL//初始测试区中方块的数量、图片INTM5,N6FINALINTIMAGENUMBER7//构造方法,为了初始化“记忆测试系统”窗口MEMORYGAME{//创建三个文件对象FILEONEGRADENEWFILE“初级记忆排行榜TXT“FILETWOGRADENEWFILE“中级记忆排行榜TXT“FILETHREEGRADENEWFILE“高级记忆排行榜TXT“//创建建菜单条对象BARNEWJMENUBAR//创建第一个菜单对象MENUGRADENEWJMENU“选择级别“//创建三个菜单项对象ONEGRADEITEMNEWJMENUITEM“初级“TWOGRADEITEMNEWJMENUITEM“中级“THREEGRADEITEMNEWJMENUITEM“高级“MENUGRADEADDONEGRADEITEM//向“选择级别”菜单中增加“初级”选项MENUGRADEADDTWOGRADEITEM//向“选择级别”菜单中增加“中级”选项MENUGRADEADDTHREEGRADEITEM//向“选择级别”菜单中增加“高级”选项//创建第二个菜单对象MENURESULTNEWJMENU“查看排行榜“//创建三个菜单项对象ONEGRADERESULTNEWJMENUITEM