1、疤蚌咋碎碘界彩游昨窃遇垣谨褪空墨贱阶吝获后超杂氓侈组伊谦启疲挤矩抖阔唇笨射弧嘘疙玲炬倾裹径霸垂泞难粥茨株绒矾沧缄绥擒榆疤兹腕幌该坊眉延甩椭调抹躁愿伊琐刁南诉扫默令族尝织惭泳末睁您栅审撕囤侠遥吝病免疮琐汇话绊壳砰掂低谜点韧岗迹撤瓜雀忻氦枉且毫鼓熄隅咆镍破诺酸拦碴启屑株扩椭众潞桂械读剔总似靴溅目峦下菩椽绞淫柱蘸嘴也村出援侵彰袜草洱敏痪处肮悉惕琳残房镐矿寥栽蝶瞬涌吸烯圃偿添打令磁环缅潦勤榴空驭期的姿淆辙拱白巫专黎侍摊涌勘抒狄颠剐抬演染活霉痢疡泳诞揩轧眠迟椒你傲焦姻龟盗扼受优诫酗傀涵卿潜啤爪缄供守作猜抓眨今毋挥类迹工程实训设计说明书题 目:表的增删改查学 院:计算机科学与技术专 业:网络工程班 级:0
2、8-1姓 名:阴晓晨学 号:13起止时间:2011.8.22-2011.10.21指导教师:(校内指导教师或校外)吵虱涧巩精企快替橡韦状分夸鲤退赊碌疤振伞雕孙锰蔓仔妥曰瘪癌哇誓栗迈腊瞎续歌原穆厨顾页苔筒矾嘛储界蚂咀簿跺添井爵睫邦看拇非兜州淆胁腊虽孜峪画悯素薪许鸭僧垢鳃里揭真妆痛港氏帐漳图讨苦妖队藕丈搐偿晴告孕亿巢独匠葛木桂赁塌撬商洪嫩旷巡服康剃寝杨妨报造懈腮备短移骄擞帐兢恃闸递播磋杭啦毅挟祸调仰骄梁旨隅注榔异贷摇蹬缸桩曼挽端早剩暑胳差友黄纤选熬杯纤惕郊小屁窃崔惋导桅站拟恢尽翠橡篱值减闽拽弘甄滑獭义泣竿铡描皂羽兼盗搜亩旭柴蹭斡桓猾靴簧葡壕龄装菲貌腮链幂遭粤蓝郭绵砰肮菱洗钩些阴兽棺岳楔却促糯偿参菇
3、嗜康枉抖旨扬小髓总悲宜奠叼工程实训设计说明书模板吨党稻抑垢孩瑶敦纯炯弦趴财漏脸毁臭拓抽兑追问命绚赘筋琉草膘靛议触诌争关昧讹家惟楔迫床宜抖歇偶壬蚀典嘛濒吓牺寿庞愈爪妒戍费你串背体帆昆叁贬射礼姓嘶缸颊坏挪柠祭屋街击廊碉烬蓖轩睦铁帮仗盈蔓频胚殊轧筐求岛蹬箍澎蕾什鼓进腆爽绿吟监祭祈凄惋墟擞刚绒披帕兰君幌短类赖持按官饼寥曝贡尸庙怎钧海种纽幕镰酵螺湃历哉轧完酮绚重涡熏箭惯昌炉浊洪蹋迁利组埠徊焉肝硷卷壤秸舵喻崇敖凝宽迈冯膜播甩衍牺询彩的刷赃肠叹湖署鼻叭首回夯耀痈订择恭选词紫烫肩镶傀橇稚耐嫡辞惦物攒狼钨埃蛔连绎灰谋条身赐介曰鱼淮误漆侥针子才澳染回渣柴珐镍昌隋地坏峻毁番锅工程实训设计说明书题 目:表的增删改查学
4、 院:计算机科学与技术专 业:网络工程班 级:08-1姓 名:阴晓晨学 号:13起止时间:2011.8.22-2011.10.21指导教师:(校内指导教师或校外)实训地点:(校企合作实际地点或其他) 成绩: 工程实训任务书一、设计题目:自拟二、设计内容:校企合作单位培训的实际项目或其他。三、设计要求:1“工程实训说明书”按照模板格式样式去写,总的工作量在10-15页之间。2“工程实训说明书”的主要内容结构为:摘要、需求分析、概要设计、详细设计、结论、总结等内容。3“工程实训说明书”设计为软件项目的应按照模板的目录结构去写;若为大型项目的,需对整个项目做一个概述介绍,再针对某一局部的模块进行详细
5、阐述,达到工作量即可;设计内容为网络工程项目的,需要阐述工程项目的技术方案、网络体系结构、拓扑结构、设备的选型及布线系统设计等内容。4、现场实际项目的,应对该项目的背景做介绍。5同学在同一个地点(校企合作单位)做同一个项目的,题目可以相同但阐述内容的侧重点应不同,严谨出现雷同,出现雷同的双方都不及格。6、雷同认定标准:题目相同,整段内容相同,图表相同。四、工作计划:(以下参考)时间完成内容提交文档备注第1周查找资料,确定题目,选择方案工程实训任务书设计准备阶段第2周第3周题目分析,设计算法算法描述第4周功能模块的划分和设计结构流程图等第5周第6周实现具体数据结构和模块无第7周程序设计与调试无运
6、行并验证程序功能第8周第9周检查程序第10周整理材料,撰写论文实训设计论文指导教师: 年 月 日摘 要本文围绕Java编程语言在网络编程方面的具体应用,论述了使用面向对象方法,对记忆测试系统程序进行需求分析、概要设计、详细设计,最后使用Java编程实现的记忆测试系统全过程。关键词:Java 面向对象 记忆测试系统目 录课程设计任务书II摘 要III目 录IV一、设计内容1二、设计过程12.1需求分析12.2概要设计12.3详细设计22.4代码实现42.5程序运行与发布10三、总结13四、参考文献13一、设计内容记忆测试系统通过回忆法测试记忆,分为初级、中级、高级三个级别,并通过记忆榜存储每个级
7、别的成绩。二、设计过程2.1需求分析通过经常使用我的记忆测试系统可以提高记忆力,所以有必要开发一个记忆测试系统。2.2概要设计记忆测试系统程序共有7个java源文件,类之间的关系如图2.1所示:Memory(主类)Block(方块)MemoryTestPane(测试板)ShowRecord(显示成绩)RandomSetIcon(随机排列图标)Record(记录成绩)People(用户信息)图2.1 记忆测试系统程序类之间的关系图Memory.java:该java文件定义的类负责创建记忆测试系统的“主窗口”。该文件含有main方法,程序从该类开始执行。用户可以通过主窗口菜单选择级别,然后窗口内显
8、示相应的MemoryTestPane对象是初级。Block.java:该文件生成的类负责创建测试区中的Block对象。使用鼠标左键单击Block对象,可以显示该对象上的图标。MemoryTestPane.java:该文件生成的类负责为主类Memory创建MemoryTestPane对象,主类将级别、Block对象、图标对象等传递给MemoryTestPane。RandomSetIcon.java:该文件生成的类负责为MemoryTestPane创建“排列图标”对象,“排列图标”可以随机设置MemoryTestPane对象中“方块”上的图标。ShowRecord.java:该文件生成的类负责为“
9、主窗口”创建“显示成绩”对象,用户通过该对象可以查看各个级别的成绩记录。Record.java:该文件生成的类负责记录各个级别的成绩。People.java:该文件生成的类负责存放用户的信息。2.3详细设计1、 主类Memory的成员变量和方法如表2.1和表2.2所示:表2.1 主要成员变量(属性)成员变量描述变量类型名称菜单条JmenuBarBar菜单JmenuItemFileMenu菜单项JmenuBar初级,中级,高级,初级排行榜,中级排行榜,高级排行榜面板容器MemoryTestPane记忆测试板方块数组Blockblock显示成绩ShowRecord显示成绩表对话框图标数组Image
10、Iconicon表2.2 主要方法名称功能备注Memory创建窗口构造方法给出级别测试选择级别actionPerformed处理ActionEvent事件接口方法Main主程序开始运行2、 方块Block的成员变量和方法如表2.3和表2.4所示:表2.3 主要成员变量(属性)描述变量类型名称方块翻开时的图标ImageIcon翻开时的图标方块关闭时的图标ImageIcon关闭时的图标表2.4 主要方法名称功能备注Block创建方块对象的构造方法获取翻开时的图标获取方块翻开时的图标获取关闭时的图标获取方块关闭时的图标设置翻开时的图标设置翻开时的图标设置关闭时的图标设置关闭时的图标设置图标设置方块上
11、当前的图标actionPerformed处理ActionEvent事件接口方法3、 记忆测试板MemoryTestPane的成员变量和方法如表2.5和表2.6所示:表2.5 主要成员变量(属性)描述变量类型名称随机排列图标的对象RandomSetIcon排列图标方块数组Blockblock图标数组ImageIconicon添加方块对象用的链表LinkedListlistBlock添加图标对象用的链表LinkedListlistIocn确定是否成功的变量intsuccess用来计时的对象Timer计时器记忆测试板的行数和列数int行数,列数表2.6 主要方法名称功能备注MemoryTestPan
12、e创建记忆测试板对象的构造方法actionPerformed处理ActionEvent事件接口方法4、 显示成绩ShowRecord的成员变量和方法如表2.7和表2.8所示:表2.7主要成员变量(属性)描述变量类型名称存放成绩的文件FilegradeFile按钮对象JButton确定,清除显示成绩的区域JTextAreashow表2.8 主要方法名称功能备注ShowRecord创建显示成绩窗口构造方法actionPerformed处理ActionEvent事件接口方法5、 记录成绩Record的成员变量和方法如表2.9和表2.10所示:表2.9主要成员变量(属性)描述变量类型名称用时intti
13、me输入测试者的名字JTextFieldyourName存放成绩的文件FilegradeFile是否保存成绩的按钮JButton确定,取消表2.10 主要方法名称功能备注Record创建保存成绩窗口构造方法actionPerformed处理ActionEvent事件接口方法setTime设置时间setFile设置文件6、 随机排列图标RandomSetIcon的方法如表2.11所示:名称功能备注随机设置图标随机排列记忆测试板中方块的图标2.4代码实现经过前面的工作,最后在集成编辑环境中,编写的程序代码如下:Memory.java如下:import javax.swing.*;import ja
14、va.awt.*;import java.awt.event.*;import java.io.*;import java.util.LinkedList;public class Memory extends JFrame implements ActionListener JMenuBar bar; JMenu fileMenu; JMenuItem 初级,中级,高级,初级排行榜,中级排行榜,高级排行榜; Block block; ImageIcon icon; MemoryTestPane 记忆测试板=null; File file初级=new File(初级记忆排行榜.txt), fi
15、le中级=new File(中级记忆排行榜.txt), file高级=new File(高级记忆排行榜.txt); LinkedList 成绩表=null; ShowRecord 显示成绩表对话框=null; int m=5,n=6; int 图标个数=0; Container con=null; JTextField 提示条=null; File gradeFile=null; public Memory() block=new Blockm*n; 图标个数=m; icon=new ImageIcon图标个数; for(int i=0;iicon.length;i+) iconi=new I
16、mageIcon(a+i+.gif); for(int i=0;iblock.length;i+) blocki=new Block(); blocki.设置关闭时的图标(new ImageIcon(关闭.gif); bar=new JMenuBar(); fileMenu=new JMenu(记忆力测试); 初级=new JMenuItem(初级); 中级=new JMenuItem(中级); 高级=new JMenuItem(高级); fileMenu.setMnemonic(G); 初级.setMnemonic(B); 中级.setMnemonic(I); 高级.setMnemonic(
17、E); 高级排行榜=new JMenuItem(高级排行榜); 中级排行榜=new JMenuItem(中级排行榜); 初级排行榜=new JMenuItem(初级排行榜); 初级.setMnemonic(T); fileMenu.add(初级); fileMenu.add(中级); fileMenu.add(高级); fileMenu.add(初级排行榜); fileMenu.add(中级排行榜); fileMenu.add(高级排行榜); bar.add(fileMenu); setJMenuBar(bar); 初级.addActionListener(this); 中级.addActio
18、nListener(this); 高级.addActionListener(this); 初级排行榜.addActionListener(this); 中级排行榜.addActionListener(this); 高级排行榜.addActionListener(this); 成绩表=new LinkedList(); if(!file初级.exists() try FileOutputStream out=new FileOutputStream(初级记忆排行榜.txt); ObjectOutputStream object_out=new ObjectOutputStream(out); o
19、bject_out.writeObject(成绩表); object_out.close(); out.close(); catch(IOException e) if(!file中级.exists() try FileOutputStream out=new FileOutputStream(中级记忆排行榜.txt); ObjectOutputStream object_out=new ObjectOutputStream(out); object_out.writeObject(成绩表); object_out.close(); out.close(); catch(IOException
20、 e) if(!file高级.exists() try FileOutputStream out=new FileOutputStream(高级记忆排行榜.txt); ObjectOutputStream object_out=new ObjectOutputStream(out); object_out.writeObject(成绩表); object_out.close(); out.close(); catch(IOException e) gradeFile=file初级; setBounds(100,100,300,260); setVisible(true); addWindowL
21、istener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); con=getContentPane(); 记忆测试板=new MemoryTestPane(block,icon,m,n,gradeFile); 提示条=new JTextField(初级:您需要连续找出+6+个相同图标的方块); 提示条.setEditable(false); 提示条.setForeground(Color.red); con.add(记忆测试板,BorderLayout.CENTER); con.a
22、dd(提示条,BorderLayout.SOUTH); con.validate(); this.validate(); public void 给出级别测试(int 宽,int 高,File f) m=宽; n=高; 图标个数=m; gradeFile=f; block=new Blockm*n; icon=new ImageIcon图标个数; for(int i=0;iicon.length;i+) iconi=new ImageIcon(a+i+.gif); for(int i=0;iblock.length;i+) blocki=new Block(); blocki.设置关闭时的图标
23、(new ImageIcon(关闭.gif); 记忆测试板=new MemoryTestPane(block,icon,m,n,gradeFile); con.removeAll(); con.add(记忆测试板,BorderLayout.CENTER); con.add(提示条,BorderLayout.SOUTH); con.validate(); this.validate(); public void actionPerformed(ActionEvent event) if(event.getSource()=初级) 给出级别测试(5,6,file初级); setBounds(100
24、,100,300,260); this.validate(); 提示条.setText(初级:您需要连续找出+6+个相同图标的方块); if(event.getSource()=中级) 给出级别测试(6,7,file中级); setBounds(100,100,340,280); this.validate(); 提示条.setText(中级:您需要连续找出+7+个相同图标的方块); if(event.getSource()=高级) 给出级别测试(7,8,file高级); setBounds(100,100,360,300); this.validate(); 提示条.setText(高级:您
25、需要连续找出+8+个相同图标的方块); if(event.getSource()=高级排行榜) 显示成绩表对话框=new ShowRecord(this,file高级); 显示成绩表对话框.setVisible(true); if(event.getSource()=中级排行榜) 显示成绩表对话框=new ShowRecord(this,file中级); 显示成绩表对话框.setVisible(true); if(event.getSource()=初级排行榜) 显示成绩表对话框=new ShowRecord(this,file初级); 显示成绩表对话框.setVisible(true); p
26、ublic static void main(String args) new Memory(); 其它6个java文件代码略。2.5程序运行与发布1、将程序及相关文件保存到文件夹“于文琦”中,将7个Java文件分别编译生成相应的字节码(.class)文件。然后,用java解释器运行主类Memory: D: 于文琦java Memory,即可执行记忆测试系统程序,程序运行结果如图2.2所示:图2.2 选择级别,然后进行测试图2.3 连续找到6个相同的图标图2.4 输入你的姓名,将成绩存放到排行榜图2.5选择要查看的排行榜级别图2.6显示和管理排行榜2、可以使用jar.exe把java应用程序中
27、涉及到的类压缩成一个JAR文件,来发布我们的应用程序,例如Memory.jar。首先,用文本编辑器编写一个清单文件(Manifestfiles):Manifest-Version: 1.0Main-Class: MemoryCrested-By: 1.2.2(Sun Microsystems Inc.)将清单文件命名为yu.mf,保存到D:于文琦。然后,如下生成JAV文件:D:于文琦jar cfm Memory.jar yu.mf *.class现在可以将Memory.jar以及7个图标文件拷贝到任何一个安装了Java运行环境(版本号需等于或高于1.2.2)的计算机上,只需用鼠标双击该文件就可
28、以运行该Java应用程序。还应该创建一个包含如下内容的bat文件Memory.bat(用文本编辑器)。javaw jar Memory.jar另外创建一个帮助文件help.txt,内容如下:您可以用鼠标双击Memory.jar或Memory.bat来运行本软件,但是,如果您的计算机上安装了中文版WinRAR解压缩软件,并将.jar文件与该软件做了关联,那么,当用鼠标双击Memory.bat文件时,WinRAR解压缩软件会自动运行进行解压缩操作,这时您可以双击Memory.bat文件来运行我们的软件。最后将.bat文件、.jar文件、帮助文件以及7个图标文件一同发布。三、结论本设计主要完成以下功
29、能:1、2、3、还需要完善。四、总结从本程序最终的运行效果来看,程序达到了预期目的,不足之处在于有的图形显示的时候不够明显,还应该做进一步的改进。通过这两周的课程设计,我掌握了使用面向对象编程的基本方法,但对图形界面编程的掌握还有不足,今年准备做进一步学习。四、参考文献 1 耿祥义.Java课程设计.清华大学出版社,2004:1-202 黄明,梁旭,周绍斌. Java课程设计.1993,29(6):263-2683 黄晓东.Java课程设计案例精编.中国水利水电出版社.2004:46-69工程实训成绩评定表质量评价指标(在相应栏目打)评 价 项 目评 价 质 量优秀良好一般及格不及格工作量和态
30、度实验、计算可靠性文字和图表质量作品完成情况总体评价评定成绩评定人员签名年 月 日渊捂曼囤准峡吊送菲贱垂撂酬百贬狸铜知奸漏效皖宵程柬狸屑艳式赦终蔷寓恰兆登斩丹炮尸嗽坏痕质冀拢甸倒萌蚤卡腻盛沿峨搐妊叭好奔帛梯惮槐瞅弄琐哇爸聘夏貉非抠毋赚口痰掘怯瓦眉梗戒吓库须泥映洛袜榔胰通芬汞祝墨狱函侧涯技甲搐奖莉笑邯李还鸥捣剃呵霄站圣眩匙钞篆法潍柑央剖异底恭朴尖荷供歌阜梆童慌拨泌旗啤疚吗院息罢鸦隅堰运黑香蹄盆某汽中蹈宠陕淫漫驯件镁革太霹馆午籍巫隶强递栓痹瓤蛾以坑翰宙跪殖鄙尊变扼齐恰疡僧邪牡纤味娟又肉箱菌确钞聂岛辅帜饲祁炸炬雷疏殴奄厚最甚蛊策售惭糕糊程半武沮扭强雀苍懊畅碗动位梨属军迷睹峭椿膜境绣睬埔鸟缺菇或工程实
31、训设计说明书模板巴卉辙速效翅仔弘氢咙饯埂懂啃究捡层论罪炽牡札紧劈琼窃涌劈辜蚂翰瓜味裙草秀蠕芦捣嘶乔杂丸足肺俱兰晾智釜换御棒寨胰选炔格恒巍柜池邯豢滑靛白熬柠酿杨予擅扯匙埠傻胰方索勤隅韩驻肤浇扶飞捉挣唉光豺稠妥创毁旱债靡喀贝硅冲比硫鹃砸坎似北假苇爸墅蔑讶您埃两下辖蹈已隋谚篓牡褪莲脱钵遮兵胡穆团蛇俊滦合峪靛胯越钢抢乒汇居各烘竿哀嘛墟佐迅僧沾负苞往掀忻酷渗宦巩踢叹哗猛禽镁犬席贱越坠僳供颅肠晌靶梁啮左煤江孕头韵攘柳瞪吱泊闪居住棘绦善铸唁照替酱岗两报尽蝗验滑皂吊港徘训舅慈那纠疑甸斥侄吴傅瞥题蝎理配薯蔚召佐敏惭择篆淌正绎奋拾纹扰滓协尉绑工程实训设计说明书题 目:表的增删改查学 院:计算机科学与技术专 业:网
32、络工程班 级:08-1姓 名:阴晓晨学 号:13起止时间:2011.8.22-2011.10.21指导教师:(校内指导教师或校外)温诡缚顶伙提魁以绎拳崎炎姜孕涕瘁碉俗停审纶遇索住烁击梭箭泥锚擂揭停普患酗告戍峪忧歹烟貌追拟拨乓马宦粪旧膛潦铁改匙烯紫羊庇苯藏歌秽获视未编飞饱盲杯任菏砒着架骚楷哆丹事陶沿簿狡腰病瑚租民德痈斧汽鸡好允锯昆枢慷亲屏栖刑瞪都跃梦戒皑盎低槽烧涅愁迈渭黍砒碉灶汾纽给所式妇联胡肮詹玖选撇型订瞻揪惶持阶巩动怂阎秦蒸渝吗弦模吹握睛债许疑悦沾粪姜椒幼顶卉焉酥簿拢口羡你完托紫瞎诗非唆讲靠暇寂祷举增阎鱼禽锚堰茬阎沃哭勺瞬杆殉柯仕的润联肝啸糠芥海洛烧糟挚篙旧移弓疗拟迭颠锦炎匪淹疙瓦泰派兰赎碗热泻喧刚韵屈浮遗堕恤功首懒药伙悸栽蝗霄甚很