题 目 日历记事本 起讫日期 2 0 0 9 年 1 2 月2 8 日至2 0 1 0 年1 月1 1 日 所在院系 软件学院 学生姓名 x x x x 专 业 x x x x x 学 号 x x x x 指导教师 职 称 讲 师 所在单位 软件学院 2010 年 1 月 1 1 日- 1 - 一.总体设计 1.类之间的关系如图1-1 所示。 图1-1 类之间的关系 2.java 源文件及其功能如表1-1 所示。 二.详细设计 1.主类CalendarPad (1)成员变量见表1-2 表1-2 主要成员变量(属性) 成员变量描述 变量类型 名称 年、月、日 Int Year,month,day 表1-1 java 源文件及其功能 序号 文件名 主要功能 备注 1 CalendarPad.jav a 创建实用万年历记事本程序的主窗口 含有 main 方法 2 NotePad.jav a 该文件负责创建记事本 3 Year.jav a 该文件负责创建管理年份的对象 4 Month.jav a 该文件负责创建管理月份的类对象 CalendarPad(主类) NotePad Year Month - 2 - 显示日期 JTex tField[] showDay 日历对象 CalendarPad 日历 记事本对象 NotePad notepad 月 Month 负责改变月 年 y ear 负责改变年 打印对象 PrintJob p 图形对象 Graphics g 保存日志的散列表 Hashtable hashtable 存放散列表的文件 File file (2)方法见表1-3 表1-3 主要方法 方法名 功能 备注 CalendarPad 创建程序主窗口 构造方法 设置日历牌 设置日历的年份和月份 排列号码 排列月份中的号码 mou sePressed 处理 Mou seEv ent 事件 actionPerformed 处理 ActionEvent 事件 接口方法 main 程序开始运行 (3)源代码见文件CalendarPad.jav a import java.util.Calendar; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.io.*; import java.util.Hashtable; import java.lang.String.*; public class CalendarPad extends JFrame implements MouseListener,ActionListener - 3 - { int year,month,day; Hashtable hashtable; File file; JTextField showDay[]; JLabel title[]; Calendar 日历; int 星期几; NotePad notepad=null; PrintJob p=null; //声明一个PrintJob 对象。 Graphics g=null; Month 负责改变月; Year 负责改变年; String 星期[]={"星期日","星期一","星期二","星期三","星期四",...