参考java课程设计报告.docx
《参考java课程设计报告.docx》由会员分享,可在线阅读,更多相关《参考java课程设计报告.docx(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目 录目 录1.引 言42.设计目的与任务53.设计方案63.1总体设计63.2设计要求63.3系统的主要功能63.4开发环境63.5系统的功能模块划分与系统流程图73.5.1系统的功能模块划分73.5.2万年历模块流程图83.5.3日记本模块流程图83.6各个类说明93.6.1主类NoteBook93.6.2图片轮换ImagePanel类103.6.3月份显示MonthPane类103.6.4年月显示YearMonth类103.6.5背景音乐Music类113.6.6日期获取DateTime类114.各种功能截图115.课程设计总结306.个人心得体会317.附录3253附录摘 要本课程设计
2、通过代码实现将理论知识和具体实践相结合,巩固提高了对JAVA的相关方法与概念的理解,使学生的发散思维及动手能力进一步加强,加强对计算机及软件工程的进一步了解。在这个课程设计中,做成了一个有日历标记的记事本软件,写字留痕面板由日历、记事本、图片、时钟四部分组成。日历部分可以选择不同的年份、月份、日期和星期;记事本模块可以实现查看,保存,删除日志等操作;并且每一步操作都有相应提示;图片模块可以显示预设的图片;时钟模块可以用时钟来显示当前时间。本软件是一个实用性较强,简洁,美观,方便的功能软件。关键字:记事本;日历;1. 引 言Java是一种纯面向对象的、网络编程首选的语言。Java技术作为软件开的
3、一种革命性技术,已被列为当今世界信息技术的主流之一。为了适应时代潮流,我们应该加强对Java的学习,更好的掌握这门课程。为此Java课程设计决定以“写字留痕”为设题材,借此巩固加深我们对Java的了解。本次课程设计的实例虽然比较简单,程序设计也不是很复杂,但在此程序的设计过程也是一个学习过程,更是对复杂程序的一个学习过程,还能培养我们的数抽象能力。因此,我们觉得这次课程设计是非常有意义的,能为我们今后学习面向过程的程序设计作一些铺垫。2. 设计目的与任务本课程设计所要求达到的目的和任务:通过Java程序设计的一些重要理论基础来实现“写字留痕”的“日历”和“记事本”的双重功能。并通过此次课程设计
4、的训练,使学生巩固和加深对Java这门课程的理解,通过利用所学到的计算科学的理论知识,提高解决实际问题的能力,增强运算、编程和使用技术资料的技能,通过实际问题的分析设计、编程和调试,掌握应用软件的分析方法和工程设计方法,能正确阐述设计和实验结果。通过这次课程设计,培养实事求是、认真、严谨的科学态度和刻苦钻研不断创新的精神,逐步建立正确的全局观念。3. 设计方案3.1 总体设计(1)问题定义:创建写字留痕,实现对某日期的事情进行记录这主要功能,并能显示设置的图片,增加美观。(2)问题分析:通过对“写字留痕”这一题材的分析,我需要四个类来实现其“日历”和“记事本”这两大功能。通过主类N2创建动写字
5、留痕软件的主窗口,该类含有main方法,程序从该类开始执行。再用余下YearMonth 、MonthPane类来显示并改变日期和实现记事本的功能。而ImagePanel类用来显示图片,Music类用来实现音乐的播放控制。(3)研究意义:通过本次课程设计,我们掌握了Java语言的基本运用,提高了理论结合实际的能力。 3.2 设计要求 (1)日记本使用Java语言开发设计。课程的基本功能包括万年历、记事本和辅助功能三个部分。(2)万年历部分由微调器确定年月,由一组文本框显示日历。年月可选择数据符合逻辑,默认为当前日期。(3)月历显示应该符合查看习惯,如星期六和星期日分别用不同颜色表示,当日可用特别
6、的字号和颜色(4)记事本区,记事本内容按年月日记录且保存。(5)微调器应该进行事件设置,以及即时地显示该年月的月历;日期文本框可监听鼠标事件,当单击任何一个日期时,若该日有记事内容,则在日记本中显示该日期的记录文字;若该日无记录,记事区保持空白。(6)日记本应该是开放的,内容可按日期增减,保存应即时,删除需谨慎删除记录时,应进行对话框询问确定。(7)辅助功能包含了日记的导入导出。“导入”可以将其他日记文件导入合并到当前“写字留痕”的日记本中;“导出”可将“写字留痕”的所有记录内容按日期为序导出到一个文本文件中。为安全起见导出时需加以安全确认,要求输入正确设定的密码后才能导出。(8)系统界面外观
7、和布局,可个性化设计,总体原则是“界面简洁,操作便捷”。 3.3 系统的主要功能 (1)可以对个人日志进行保存、删除、导入和导出;(2)可以方便地在任何日期记载个人日志以及查看某个日期记载的日志 ;(3)可以显示当前日期。3.4 开发环境Windows XP;jdk1.5.0_16;EditPlus编辑器。3.5 系统的功能模块划分与系统流程图3.5.1 系统的功能模块划分本日历记事本共有6个类。Class NoteBook该java文件生成的类负责创建本日历记事本程序主窗口。该类含有main方法,程序从该类开始执行。此外,该主类负责创建日记文本、负责创建创建左侧面板、负责创建右侧面板、负责在
8、文本框上弹出快捷菜单。Class DateTime该类获得系统当前的日期,包括年月日。Class YearMonth该类负责创建管理年份和月份的对象。Class MonthPane该类负责生成日历创建日历。Class ImagePanel该类负责出现图片的轮换。Class Music该类负责出现背景音乐以及控制音乐的播放。模块图如图3-1所示.NoteBook riliImagePanellMonthPaneYearMonthPaneDateTime textJTextArea time图3-13.5.2 万年历模块流程图万年历流程图如图3-2所示.万年历 按钮 选择日期 正确输入错误输入 改
9、变当天日期 当天是否有日记? 有无更改记事本显示图 3-23.5.3 日记本模块流程图日记本流程图如图3-3所示. 显示日记本 停止开始组合框导出导入删除保存 单击暂停播放音乐单击,开始播放音乐歌曲添加进去可进行多项选择把保存的文件导入到所选的路径下打开文件,把文件保存到对话框当前留有记录就删除记录以当前日期为当前内容保存TreeMap中各个类说明3.5.4 主类NoteBook 1.成员变量表3-1成员变量描述 变量类型 名称年、月、日 int nian,yue,ri,year,month,day 日历对象 Calendar c,d时、分、秒 int hour,minute,second文本
10、框 JTextArea t记事本面板 JPanel text微调器 YearMonth date月份面板 MonthPane mp按钮 JButton bclear,daoru,bsave,daochu gnew,gopen,gsave,gcopy,gcut,gpaste,ghelp标签 JLabel time1,time2菜单栏 JMenuBar mnb菜单 JMenu file,edit,config,help,color菜单项 JMenuItem New,open,save,exit, copy,cut,paste,selectall,fc,bc,dc,about;颜色 Color r弹
11、出式菜单 JPopupMenu tc,tc1工具栏 JToolBar gj保存日志的散列表 Hashtable table保存散列表的文件 File f2.方法表3-2名称 功能 备注 NoteBook 创建窗口主程序 构造方法init 主界面上的按钮初始化menuinit 菜单项初始化gjinit 工具栏对象初始化 tcinit 弹出式菜单对象初始化 addEvent 年月微调按钮事件menuaddEvent 菜单项进行监听gjaddEvent 工具栏进行监听tcaddEvent 弹出式菜单进行监听main 程序开始运行gettime 得到当前的时间run 小时钟的线程initFile 新建
12、文件actionLIstener 设置事件监听方法mousePressed 鼠标事件监听mouseClicked 鼠标事件监听mouseEntered 鼠标事件监听mouseExited 鼠标事件监听mouseReleased 鼠标事件监听export 导出函数save 保存方法getDaterKey 导出时的key值refreshContent 刷新noteBookRefresh 刷新stateChanged 监听微调器delete 删除方法openfile 打开文件并读入3.6.2图片轮换ImagePanel类1.成员变量表3-13描述 变量类型 名称标签 JLabel l图片数组 Ico
13、n ii Icon5计数器 int count 2.方法表3-14名称 功能 备注ImagePanel 实现图片轮换 构造方法showInit 变量初始化run 线程启动方法3.6.3月份显示MonthPane类1.成员变量表3-7描述 变量类型 名称单行文本框 JTextField showDay第一天 Int first,days一周的天数 String week标签 JLabel title年,月,日 Int year,month,day;2.方法 表3-8名称 功能 备注MonthPane 产生月份 构造方法arrangeNum 将不同的日期设置不同的颜色3.6.4年月显示YearMo
14、nth类1.成员变量表3-9描述 变量类型 名称年,月 int year,month标签 JLabel y1,m1年份微调器 JSpinner showYear月份微调器 JSpinner showMonth模版 SpinnerNumberModel yearModel,monthModel2.方法 表3-10名称 功能 备注YearMonth 年月微调器 构造方法3.6.5背景音乐Music类1.成员变量表3-11描述 变量类型 名称播放控制按钮 JButton start,stop组合框 JComboBox music字符串 String sMP3文件的名字 String musicnam
15、e播放器对象 MediaPlayer play2.方法表3-12名称 功能 备注Music 添加背景音乐 构造方法Musicinit 初始化 musicaddEvent 添加监听的方法itemStateChanged 组合框监听事件处理actionPerformed 对按钮的监听处理3.6.6日期获取DateTime类1.成员变量表3-13描述 变量类型 名称日历对象 Calendar today2.方法表3-14名称 功能 备注DateTime 产生鼠标点击的日期 构造方法getYear 产生当前的年份getMonth 产生当前的月份getDay 产生当前的天getMonday 产生当前年、
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 参考 java 课程设计 报告
限制150内