




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java面向对象程序设计课程设计指导书 专 业: 11软件服务工程 指导教师: 谢彦麒 计算机科学与技术系2012年5月26日 一目的本课程是软件工程、信息技术外包专业所开设的一门重要实践课程,主要要求学生掌握Java语言和面向对象在实践中的应用。本课程设计的目的是使学生在理论学习的基础上,动手编写程序,通过应用所学习的知识,来解决一些实际的问题。在此基础上,真正理解和掌握Java面向对象程序设计的相关理论,具备程序设计的能力。二题目任选下列八个项目进行,查阅相关文献、了解相关的系统,要求完成规定的各项任务。(多做将加分)1. 打地鼠2. 狗的年龄3. 虐待鼠标4. 是男人就坚持20秒5. 手机号码检测器6. 扑克牌7. 计算器8飞镖射击游戏9视频播放器10挂钟11. 愤怒的小鸟12. 石头剪刀布13. 条状图14. 里程计15. 异常处理16. 国旗知识测评应用程序17. 微波炉模拟应用程序18. 文本统计19. 门禁系统应用程序任选下列一个项目进行,查阅相关文献、了解相关的系统,要求完成规定的各项任务。(选择自拟题将加分)20. 图书管理信息系统21. 学籍管理信息系统22. 高校工资管理23. 学生考勤系24. 自拟题三任务完成形式1 完整的软件系统 最终必须向指导老师提交完整的电子版程序源代码、可执行程序、数据文件以及使用说明文件等。源代码文件要特别注意编程规范、代码风格,关键代码需有合理的注释,不含任何无用代码;数据文件内要求有一定数量的“真实”数据(如对于记录文件,需要有5条以上记录); 使用说明文件的第一行,需要给出设计者的学号、姓名,后面为其它说明。2 课程设计报告参照设计报告模板完成设计报告。四总体要求 根据所给的实验指导书的要求,从中选择项目,应用所学的知识,完成题目所规定的各项要求。总体要求如下:1 程序代码总量不少于500行(其中不包括编译器自动生成的代码),关键代码必须有合理注释。2 课程设计报告正文字数不少于1000汉字,概念清楚、叙述正确、内容完整、书写规范。3 课程设计中必须按指导书要求,综合应用所学的网络安全知识解决实际问题,有必要的理论分析,设计要有合理的依据。独立完成课程设计,不得抄袭他人。4 功能正确、有一定实用性,鼓励创新。5 程序界面友好,便于交互。6 在设计过程中要考虑用户使用的便利,提供一些多样化的选择,比如在算法的安全性和便利方面做出折衷。7 积极交流与讨论(通过同学、网络等途径)、善于查阅资料、分析与借鉴他人编写的软件和源代码。五工作阶段与考核方法大体上可分成五个阶段: 1资料查阅准备阶段(15%)2分析设计阶段(35%)3编程调试阶段(40%)4课程设计报告书写阶段(10%)5验收阶段 考核方法: 只有程序验收通过后,才能按以下方法核定本次课程设计的总成绩,因未能独立完成设计(尤其是抄袭)或概念不清的同学,总成绩将核定为不及格。总成绩由以下几个部分决定:1 考勤、纪律、实验室卫生2 工作量(代码量、功能多少、难度、经历的曲折)3 关键技术4 实用性、创新5 代码书写规范性(包括注释的质量、详尽程度和明晰性)6 程序界面、新技术引用、易用性7 课程设计报告(叙述、书写规范、字数)8 动手能力、分析问题解决问题能力9 答辩的情况(答辩时会问关于系统实现和本作品相关的理论知识的问题)10. 在资源共享和互助协作方面的贡献及其体现的能力 六任务具体要求一些功能如果有其他的方法实现,也可以不按照指导书的要求。此外,还可以对常用的安全软件的功能延伸和改进。1、打地鼠任务:打地鼠是一款适合幼儿的游戏,规则如下:一块田地上有些洞,人物控制一把锤子来敲打从洞里冒头出来的地鼠,打够一定数量的地鼠后会计入下一关,且地鼠冒头的速度会随着关数的增加而越来越快。你可能需要用到P319页得Timer类来控制地鼠出现的频率基本要求: 2、狗的年龄任务:狗的年龄无法与人相比,它的寿命约为人的1/7.。功能要求:设计一个Dog类,包含狗的名字和年龄。定义Dog类的构造方法接受和初始化名字和年龄,重载构造方法只接收姓名,年龄自动初始化为0定义获取与设置名字和年龄的方法定义一个方法计算并返回狗等效于人的年龄(狗的实际年龄*7)重载toString方法输出狗的名字、年龄、狗等效于人的年龄创建一个main方法测试你的程序。3、虐待鼠标任务:鼠标是一个易损器件,损坏的原因往往是因为过量的点击。请参考第四章的例题4.10设计一款程序测试在一分钟内你能点击鼠标多少次,找你的同学来试试看看谁的食指更灵活。提示:时间差计算方法Calendar begin=Calendar.getInstance(); /获取起点时间Calendar end = Calendar.getInstance(); /获取终点时间long between=end.getTimeInMillis() - begin.getTimeInMillis()/1000; /除以1000是为了将毫秒转换成秒4、是男人就坚持20秒任务:是男人就坚持20秒是一款躲避子弹的游戏,你将操控飞机躲避满屏幕的子弹。实验八中的Rebound Revisited实现的是屏幕上有两个物体在运动,请参考它实现这款游戏。提示:注意实现碰撞检测。5、手机号码检测器任务:手机号码是由11位数字构成,用户在输入手机号码时经常混乱输入若干位数字或字母,要求你编写一个程序检测用户所输入的手机号码是否符合规则。功能要求:检测所输入的手机号码是否是11位检测每一位是否都为数字。 6、扑克牌任务:设计一个Card类代表扑克牌,每张牌都有自己的花色和大小。创建一个DeskOfCards类保存52张扑克牌,设计洗牌、发一张牌、报告剩余牌数的方法。创建main方法测试你的程序。功能要求:7、计算器任务:参考第六章的实验题Telephone Keypad界面设计一个计算器。功能要求:8、飞镖射击游戏任务:参考第五章的例题5.15实现一款考虑飞镖重力或者侧风的飞镖游戏功能要求:9、视频播放器任务:参考第十章的例题10.11和9,.16用AudioClip类实现一个带滑动条的视频/音频播放器功能要求:10、挂钟任务:设计一款如下的挂钟功能要求:提示:Calendar calendar=Calendar.getInstance(); /获取当前时间int year=calendar.get(Calendar.YEAR); /获取年int month=calendar.get(Calendar.MONTH); /获取月int day=calendar.get(Calendar.DATE); /获取日int weekDay=calendar.get(Calendar.DAY_OF_WEEK);int am_pm=calendar.get(Calendar.AM_PM);int hour=calendar.get(Calendar.HOUR_OF_DAY); /获取小时int minute=calendar.get(Calendar.MINUTE); /获取分钟int second=calendar.get(Calendar.SECOND); /获取秒11、愤怒的小鸟任务:愤怒的小鸟是一款“亿人迷”的游戏,据说大家喜欢它的原因在于大家喜欢抛物线胜过直线。例题8.15-8.16是笑脸图片直线运动的例子,请修改它在X轴和Y轴的运动轨迹,将它改成抛物线运动。功能要求12、石头剪刀布任务:参考第五章的实验题Rock, Paper, Scissors设计并实现一个和计算机交互的剪刀、石头、布游戏。人和计算机各选择一项,然后决出胜负。程序必须随机选取一项但不表示出来,然后提示用户选择。当用户选择后,程序同时显示出计算机和用户的选择并且输出游戏结果。游戏一直进行直到用户退出为止,并且输出双方输赢次数和总局数。功能要求13、条状图任务:设计实现一个应用程序,创建一个条状图,用于查看一组JAVA成绩的分布情况。程序初始化一组0-100的整数,根据整数值进行分类,通过调用fillRect方法绘图。功能要求14、里程计任务:定义一个叫Odometer(里程计)的类,追踪汽车的燃油与行驶里程之间的关系。功能要求(1) 类中包含私有成员变量行驶里程(公里)、剩余燃油(升)、燃油效率(升/百公里)。(2) 包含构造函数初始化行驶里程为零,剩余燃油为60,燃油效率任意。(3) 包含成员函数将行驶里程设置为零;包含成员函数设置燃油效率。(4) 包含成员函数设置剩余燃油;成员函数接收一段旅程的长度,将旅程长度添加总到行驶里程中,并根据燃油效率扣减剩余燃油;成员函数返回剩余燃油。(5) 成员函数返回剩余燃油可行驶里程。(6) 输入数据测试Odometer类15、异常处理任务:修改书中例题10.1,用try-catch抛出捕捉异常,并输出异常信息。功能要求16、国旗知识测评应用程序任务:某地理老师想测试一下学生对不同国家国旗知识的了解情况,因此,设想开发一个应用程序显示不同国家的国旗并允许学生从列表中选出与国旗相对应的国家名。之后,应用程序会告知该答案是否正确并继续显示下一面国旗。此应用程序将从澳大利亚、巴西、中国、意大利、俄罗斯、南非、西班牙、美国这8个国家的国旗中随机地挑选出5面国旗来进行显示。当应用程序执行时,所有国旗只能显示一次。(必须使用数组)功能要求17、微波炉模拟应用程序任务:某电子设备公司正考虑投产微波炉。该公司现要求开发一个可模拟微波炉工作原理的应用程序。这个微波炉模拟应用 程序将包含一个允许用户设定微波炉烹调时间的小键盘,相应的烹调时间也应显示给用户。一旦输入某个时间,用户便可以通过点击Start JButton来启动整个烹调过程。此时,微波炉上的玻璃窗将改变颜色(从灰色变为黄色),从而模拟食物烹调过程中微波炉内的灯光颜色,相应的定时器也将按每次一描的速度进行递减。当时间终止时,该微波炉的玻璃窗会再次返回到灰色状态(表示微波炉已停止工作),然后,显示文本“Done!”。客户可在任何时刻通过点击Clear JButton停止微波炉的工作,然后再重新输入一个新的时间。注意,用户所输入的分钟数不能超过59,秒数不能超过59;否则,任何无效的烹调时间都将被重置为零。功能要求18、文本统计任务:设计并实现一个文本统计工具。该工具是一个多行文本框(JTextArea),设计一个按钮统计多行文本框中的单词数,单词平均长度,每次重新按下按钮则重新统计。Word的统计效果图功能要求19、门禁系统应用程序任务:某制药公司希望在配有设备的实验室外安装一套门禁系统。只有得到授权并取得保护密码的人员才允许进入该实验室。以下便是一些有效的保护密码(也成为访问码)及所代表的雇员小组:保护密码 雇员小组1645 技术员8345 管理员9998,10061008 科学家当输入保护密码时,应是该保护密码对任何可能站在门禁系统旁边的人员都是不可见的。而所输入的每一个保护密码,其请求要么是被允许要么是被拒绝。所有试图进入实验室的请求都将显示在位于小键盘下侧的一个屏幕当中。即如果请求被允许,则相应的日期、时间及其所属的小组名称(科学家、管理员、技术员等等)均会显示在屏幕当中;如果请求被拒绝,则相应的日期、时间以及一条信息“Access Denied”也会显示在屏幕当中。此外,任何雇员还可以通过输入访问码7,8或9来寻求安检员的帮助,并且在上述访问码输入完后屏幕中会显示相应的日期、时间以及一条消息“Restricted Access”,表示已收到该请求。提示:通过JPasswordField隐藏用户的输入,通过getPassword方法取得用户在JPasswordField中的输入,利用DateFormat.getDateTimeInstance方法取得一个用以显示日期和时间的DateFormat。将new Date()传递给DateFormat的format方法,可获得包含格式化的日期和时间的String。功能要求20、图书管理信息系统任务:分析整理整个管理信息系统的业务流程。功能要求图书资料;读者资料;l借阅登记;l归还登记;21、学籍管理信息系统任务:分析整理整个管理信息系统的业务流程功能要求学生资料;l成绩登记;l综合排名;l管理成绩查询等22、高校工资管理任务:现高校有五类职工:教师,实验员,行政人员,教师兼职实验员,行政人员兼职教师。为了实现工资发放的自动功能,现要求编写程序来自动完成此功能。程序应具备从键盘录入,任意职工的工资查询(可由职工编号和职工姓名来实现),如若有职工由于工作调动,则可进行相对应的删除动作。 相关信息:每一学期将学校职工的本学期任职情况及上学期工作的相关情况输入计算机,则本学期职工的月工资按程序处理后的结果发放,其中职工的工资计算方法如下:其中工资的基本构成如下:教师: 基本工资+课时费; 实验员: 基本工资+实验室补助;行政人员: 基本工资+行政补贴; 教师兼职实验员: 基本工资+课时费+实验室补助; 行政人员兼职教师:基本工资+行政补贴+课时费; 其中: (1)课时费:教师每一学期的基本工作量为120,实验员每学期基本工作量为70,行政人员没有基本工作量,每节课时费为20元;课时费=(上学期工作量-基本工作量)*20; 注意:如果上学期基本工作量没完成,则其(上学期工作量-基本工作量)*20为负值。 (2)基本工资:教师800元,实验员650元,行政人员750元。(3)行政补贴:250元。 (4)实验室补助:150元。功能要求23
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汉字的由来和演变
- 云南省曲靖市民族中学2024-2025学年高一上学期期中检测化学试卷(含答案)
- 内蒙古鄂尔多斯市西四旗2024-2025学年高一下学期7月期末考试生物试卷(含答案)
- 福建省漳州第一中学2024-2025学年高二下学期期末考试化学试题(含答案)
- 年眼科护士工作总结
- 虚拟现实技术在娱乐产业的运用
- 餐饮连锁经营模式成功案例分享
- 2025年桥梁维护养护合同
- 2025餐馆股份转让协议合同样本
- 永顺县应急知识培训课件学校
- 2025年三支扶陕西试题及答案
- 2025年行政执法证考试必刷题库与答案
- 基孔肯雅热防控知识考试试题含答案
- 低钾血症护理常规业务学习
- 2025年职业指导师(四级)考试模拟试题汇编与模拟试题解析
- 测听讲课的课件
- 乡镇物业安全管理制度
- 起重作业安全考核试题及答案
- 高等教育十五五发展规划
- 仓管员安全培训课件
- 2025年江西赣州市融资担保集团有限公司招聘笔试参考题库附带答案详解
评论
0/150
提交评论