日历记事本课程设计报告解读

上传人:jiups****uk12 文档编号:90667875 上传时间:2019-06-14 格式:DOC 页数:15 大小:113.54KB
返回 下载 相关 举报
日历记事本课程设计报告解读_第1页
第1页 / 共15页
日历记事本课程设计报告解读_第2页
第2页 / 共15页
日历记事本课程设计报告解读_第3页
第3页 / 共15页
日历记事本课程设计报告解读_第4页
第4页 / 共15页
日历记事本课程设计报告解读_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《日历记事本课程设计报告解读》由会员分享,可在线阅读,更多相关《日历记事本课程设计报告解读(15页珍藏版)》请在金锄头文库上搜索。

1、l 编号:23JAVA高级编程课程设计报告题 目 : 记事本 姓 名 : 陈敬高 王春山 学 号 : 20131514219 20131514209 班 级 : 软件普131班 2015年 12 月 24 日一 题目意义和设计思想1、题目意义 所有正文部分,要求宋体、5号字,行间距固定值20磅,首航缩进2字符此处主要指做此题目的意义和用途,课程设计所具有的功能,以及带来的好处1.1课程设计目的: 1) 巩固和提高java编程技术。 2) 培养掌握成学设计的基本思路和方法。 3) 加强研发、调试程序的能力。 4) 增强分析、解决问题的能力。 5) 提高科技论文写作能力。1.2课程设计用途:本课程

2、设计GUI界面的日历记事本。系统将日历、记事本功能结合在一起,用户可以方便地在任何日期记录下有关内容或查看某个日期的记录内容。1.3课程设计具有的功能:用户可以登录或注册自己的账号,方便地在任何日期记录下有关内容或查看某个日期的记录内容。通过按按钮“上年”和“下年”对年份进行翻页。通过按按钮“上月”和“下月”对月份进行翻页。用户可以通过更改年份或月份来查看自己的日志。使用鼠标左键单击选定的日期,如已有记录内容,系统将弹出对话框提示该日已有记录内容,并询问用户是否用记事本显示该内容。2、设计思想此处主要指根据功能划分的功能模块,以及打算解决实现这些模块功能的思路设计思想Java记事本程序是:图形

3、界面、流与文件等技术的综合应用。 图形界面的实现:考虑到简单、实用、高效等特点,大部分选择了awt来完成实现,其中也有swing组件。文本编辑区就选用了TaxtArea作为主要的部件。 文件操作的实现:利用了字符文件流FileReader和FileWriter类来实现。 由于Java的特性,可能用任何一个编辑器来编辑,于是就将Windows中的记事本作为模仿对象,根据实现情况删减了其中的一些功能。 在设计类的时候,考虑到简单明了,就用了三个类,一个主类、一个类设计构造函数实现监听接口作为程序的整体框架,一个类设计构造函数实现查找替换功能。所有的对象和方法都是在默认属性类中创建和实现的,以及为各

4、组件注册事件监听程序也是在默认属性类中实现的。主类完成对象的实例化及显示。这们设计的优点是:条理清晰,容易理解,容易修改。这样设计的缺点是:不利于共享类中的方法。1、主要技术日历记事本系统主面板与日历板模块(CalendarPad.java) 该模块设计主要主要包含以下成员变量: 年(year) 月(month) 日(day) 存放日期的表(Hashtable) 存放日志的文件(File) 主要方法有: 创建程序主面板的构造方法(CalendarPad) 处理ActionEvent事件的接口方法(actionPerformed) 程序开始运行的main()方法。 在具体设计过程中,首先,基本功

5、能和组件的创建;然后,创建构造方法,这一部分包括:为各个功能创建监听事件,创建程序主面板以及日历面板.添加关闭窗口方法;第三步分为创建监听方法,实现对各个功能模块的操作,以及鼠标点击实现进入相应的功能面板;最后创建相应的main()方法。 2.日历记事本系统年设置模块(Year.java) 该模块用于实现日历记事本系统中关于年的设置,模块中包含的主要成员变 量有用于改变年的按钮(Jbutton 明年 去年),显示年的文本框(JTextField)。模块中包含的主要方法有用于设置年的方法(setYear),用于获取年的方法(getYear)和处理ActionEvent事件的接口方法(action

6、Performed)等在具体设计过程中,首先,显示年的文本框、按钮、文件列表、区域的创建和初始化;然后创建构造方法,实现以上信息和组件的实体化,下一步实现接口监听,创建监听方法,通过以上方法可以实现年设置模块的基本功能实现。 3.日历记事本系统月设置模块(Month.java) 该模块用于实现日历记事本系统中关于月的设置,模块中包含的主要成员变 量有用于改变月的按钮(Jbutton 上月 下月),显示月的文本框(JTextField)。模块中包含的主要方法有用于设置月的方法(setMonth),用于获取月的方法(getMonth)和处理ActionEvent事件的接口方法(actionPerf

7、ormed)等 在具体设计过程中与年设置大体上相近,首先,显示年的文本框、按钮,文件列表、区域的创建和初始化;然后创建构造方法,实现以上信息和组件的实体化,下一步实现接口监听,创建监听方法,通过以上方法可以实现年设置模块的基本功能实现。 4.日历记事本系统记事本模块(NotePad.java) 该模块中包含的主要成员变量有文本框(JTextArea),按钮(JButton 保存日 志 删除日志),用于存放日志记录的文件(File)以及响应相关操作的信息提示(JLabel)。该模块中包含的主要方法有设置信息条,设置文本区,获取日志内容,保存日志,删除日志 在具体设计过程中首先,将记事本模块中的文

8、本框、按钮创建和初始化;然后创建构造方法,实现以上信息和组件的实体化,实现接口监听,创建监听方法,选择日期时若记事本系统中已经存在记录,则弹出提示,询问是否查看;若不存在记录,则可以保存日志;对存在的日志使用删除日志功能时会弹出提示是否删除日志,选是即删除日志,选否即可返回.以上即实现学生基本信息模块的基本功能实现。二、采用的主要技术、遇到的问题和解决方法此处主要指用到Java中的主要技术,以及技术中的类和方法。在程序设计中遇到的难点和问题,是如何解决的。主类CanlendarPad(1)成员变量成员变量描述 变量类型 名称年、月、日 int year,month,day 保存日志的散列表 H

9、anshtable hanshtable 存放散列表的文件 File file 显示日期 JtextFile showDay 日历对象 Calendar 日历 记事本对象 NotePad notepad 月 Month 负责改变月 年 Year 负责改变年2.方法名称 功能 备注 CalendarPad 创建窗口主程序 构造方法 设置日历牌 设置日立的年份、月份 排列号码 排列月份中的号码mousePressed 处理MouseEvent事件 接口方法 main 程序开始运行3.对日历添加,基本上完成了我的java课程设计,通过这次的课程设计,同时做这门课程设计也进一步加强了我的动手能力,为了

10、完成好这次课程设计,记事本Note1、成员变量描述变量类型名称文本输入区JTextAreatext保存、删除日志的按钮Button保存日志、删除日志保存日志的散列表Hashtabletable保存散列表的文件4.功能设置名称 功能 备注NotaPad 创建记事本对象 构造方法setYear 设置年份getYear 获取年份setMonth 设置月份getMonth 获取月份setDay 设置日期getDay 获取日期获取日志内容 获取日志内容保存日志 保存日志删除日志 删除日志actionPerformed 处理ActionEvent事件 接口方法年Year1.成员变量描述 变量类型 名称表示

11、年份的整数 int year 显示年份的文本条 JtextFiled showYear 负责增减年份的按钮 Jbutton 明年、去年2.方法名称 功能 备注Year 创建年对象 构造方法 setYear 设置年份getYear 获取年份actionPerformed 处理ActionEvent事件 接口方法月Month1.成员变量描述 变量类型 名称表示月份的整数 int month显示月份的文本条 JtextFiled showMonth 负责增减月份的按钮 Jbutton 下月,上月2.方法名称 功能 备注Month 创建“月”对象 构造方法 SetMonth 设置月份getMonth

12、获取月份actionPerformed 处理ActionEvent 接口方法 2、遇到的问题和解决方法问题(1):数据传输问题无法连接数据库解决方法:找同学帮忙解决问题(2):数据传输问题解决方法:三、实现的主要功能和系统结构此处写本课程设计的重要功能模块以及模块结构图日历记事本系统四、核心算法描述和相关技术说明此处指解决每个模块问题设计的算法思想描述或者自己写的方法,以及代码实现(不需要在代码中加注释,解释部分在算法思想描述中阐述清楚即可)主类CalendarPad1.成员变量2.方法(1) 数据库连接import java.sql.Connection;import java.sql.Dr

13、iverManager;public class DB private String Driver_name =jdbc:mysql:/localhost:3306/test;private String USER = root;private String PASS = root;public static Connection con;public DB()try Class.forName(com.mysql.jdbc.Driver);con = DriverManager.getConnection(Driver_name, USER, PASS);con.prepareStateme

14、nt(set NAMES utf8).executeUpdate(); catch (Exception e) / TODO Auto-generated catch blocke.printStackTrace();public static Connection getConnection()if(con = null)new DB();return con;(2)系统登录public class Login Font d = new Font(楷体, Font.BOLD, 22);Font f = new Font(楷体, Font.BOLD, 15);JFrame logingui = new JFrame(用户登录界面);JLabel userlogin = new JLabel(用户登录);JLabel username = new JLabel(用户名:);JLabel password = new JLabel(密 码:);JTextField name = new JTextField();JTextField pwd = new JPasswordField();JButton login = new

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号