记忆测试系统(3)

2019-07-13 19:26

图2.2 MemoryGame创建窗口

MemoryGame主类与其他类间的交互关系如图2.3所示:

6

图2.3 MemoryGame主类与其他类间交互关系

以下是UML图中有关数据和方法的详细说明。 1)成员变量

?bar是JMenuBar类创建的菜单条,可以向bar中添加菜单。

?menuGrade、menuResult、menuIcon是JMenu创建的三个菜单,这三个菜单的名称分别是“选择级别”、“查看排行榜”和“选择图标”。

?oneGradeItem、twoGradeItem、threeGradeIte是JMenuItem类创建的三个菜单项,被添加到menuGrade菜单中,这三个菜单项的名称分别是“初级”,“中级”和“高级”。

?oneGradeResult、twoGradeResult、threeGradeResult是JMenuItem类创建的三个菜单项,被添加到menuResult菜单中,这三个菜单项的名称分别是“初级排行榜”,“中级排行榜”和“高级排行榜”。

?carImageIcon、animalImageIcon是JMenuItem类创建的两个菜单项,被添加到menuIcon菜单中,这两个菜单项的名称分别是“汽车图标”和“动物图标”。 ?fileOneGrade、fileTwoGrade、fileThreeGrade和gradeFile是File类创建的四个文件对象。fileOneGrade、fileTwoGrade、fileThreeGrade所引用的文件分别是“初级记忆排行榜.txt”、“中级记忆排行榜.txt”、“高级记忆排行榜.txt”,分别用来写入三个级别的成绩。gradeFile可以是fileOneGrade、fileTwoGrade、fileThreeGrade中的某一个。

?imageName是String类型的组件,每个单元是一个图像文件的名字。 ?memoryArea是测试区对象,由MemoryArea类负责创建。

?showDiolag是负责显示成绩的对话框,由ShowRecordDialog类负责创建 ?m和n的int型数据,其值可以确定相应级别中测试区中方块的数量,例如,对于中级水平,m=6,n=7,测试区一个有42个方块。 2)方法

?actionPerformed(ActionEvent)方法是MemoryGame类实现ActionListener接口中的方法,负责执行菜单项发出的有关命令。用户选择菜单中的菜单项可触发ActionEvent事件,导致actionPerformed(ActionEvent)方法执行相应的操作。 ?MemoryGame()是构造方法,负责完成窗口的初始化。 ?main(String[])方法是软件运行的入口方法。

2.2 MemoryTestArea类

MemoryTestArea创建的测试区如图2.4所示

7

图2.4 MemoryTestArea创建的测试区

MemoryTestArea类与其他类间的交互关系如图2.5所示:

8

图2.5 MemoryTestArea类与其他类间交互关系

以下是UML图中有关数据和方法的详细说明。 1)成员变量

?row和col的值确定测试区中方块的数量。MemoryTestArea类创建的对象memoryArea是MemoryGame中的成员,memoryArea对象通过调用initBlock(int,int,String[],file)方法将MemoryGame类中m和n的值传递给row和col。

?usedTime是用户的用时,单位是秒。

?success的值是用户找到的具有同样的图标的方块的个数。

?gradeFile是级别文件,memoryArea对象通过调用initBlock(int,int,String[],file)方法将MemoryGame类中的gradeFile的引用传递给memoryArea对象中的 gradeFile。

?数组表allBlockList单元的个数是row和col的乘积,它的每个单元存放着一个Block对象。memoryArea对象在调用initBlock(int,int,String[],file)方法时完成对

9

allBlockList单元的初始化,即创建单元中的Block对象。

?字符串数组imageFileName中的每个单元是一幅图像文件的文字。memoryArea对象通过调用setImageName(String[])方法将MemoryGame中存放图像文件名字的imageName数组的引用传递给imageFileName。

?链表openIconList用来存放用户找到的图标相同的方块上的图标。 ?链表openBlockList用来存放用户找到的图标相同的方块。

?hintThread是用Thread类创建的线程对象,用来提示测试区中的Block上的图标,提示方式是将测试区中的各个Block上图标持续显示1200毫秒。 ?hintButton是注册了ActionEvent事件的监听器,当单击它时,启动hintThread线程。

?showUsedTime显示用户的用时,即显示usedTime的值。

?hintMessage根据不同的级别显示相应的提示信息,如该级别需要用户寻找的相同图标方块的数目。

?timer是计时器,负责改变usedTime的值。

?record负责提供保存成绩的界面,是一个对话框,默认不可见。当用户寻找出级别所要求的相同图标方块的数目后,该对话框可见,用户可以在该对话框中输入姓名,并保存所输入的姓名和usedTime的值到gradeFile指定的级别文件中。 2)方法

? MemoryTestArea()是构造方法,创建memoryArea对象时需使用该构造方法。 ?initBlock(int,int,String[],file)方法。memoryArea对象调用该方法将参数的值传递给row、col、imageFileName和gradeFile,并依据这些值设置allBlockList数组表的大小,然后创建allBlockList的单元中Block对象,并设置Block对象上的图标。

?setImageName(String[])方法。memoryArea对象调用该方法可以将MemoryGame中存放图像文件名字的imageName数组的引用传递给imageFileName。当用户单击MemoryGame主类窗口的cartImageIcon和animalImageIcon菜单项时,memoryArea对象将调用该方法把存放图像文件名字的imageName数组的引用传递给imageFileName。

?actionPerformed(ActionEvent)方法。该方法是MemoryArea类实现的ActionListener接口中的方法。memoryArea中的每个Block对象都注册了ActionEvent事件监听器,当用户单击memoryArea中的某个Block对象时,actionPerformed(ActionEvent)方法将被调用执行,所执行的主要操作是:如果该Block对象未显示图标,并且该Block对象设置的图标和openIconList的中存放的图标相同,就将该图标添加到链表openIconList中,同时将该Block对象上

10


记忆测试系统(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:四年级综合实践活动《关爱身边的植物》主题教学设计201803 - 图

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: