万年历查询系统 Java课程设计 课程设计报告 源代码

上传人:第** 文档编号:31216759 上传时间:2018-02-06 格式:DOC 页数:21 大小:364KB
返回 下载 相关 举报
万年历查询系统  Java课程设计  课程设计报告  源代码_第1页
第1页 / 共21页
万年历查询系统  Java课程设计  课程设计报告  源代码_第2页
第2页 / 共21页
万年历查询系统  Java课程设计  课程设计报告  源代码_第3页
第3页 / 共21页
万年历查询系统  Java课程设计  课程设计报告  源代码_第4页
第4页 / 共21页
万年历查询系统  Java课程设计  课程设计报告  源代码_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《万年历查询系统 Java课程设计 课程设计报告 源代码》由会员分享,可在线阅读,更多相关《万年历查询系统 Java课程设计 课程设计报告 源代码(21页珍藏版)》请在金锄头文库上搜索。

1、湖 南 商 学 院 面 向 对 象 程 序 设 计 课 程 设 计 报 告题 目 万年历查询系统 姓 名: 龚丁禧学 号: 070920093专 业: 计算机科学与技术班 级: 计科 0703指导教师: 刘耀职 称: 讲师计 算 机 与 电 子 工 程 学 院2009 年 6 月课程设计评审表学 号 070920093姓 名 龚丁禧 学 院 计算机与电子工程学院 专业班级 计科 0703题 目 万年历查询系统评审意见评审成绩指导教师签名 职称 评审时间 年 月 日课程设计作品验收表题目 万年历查询系统姓 名 龚丁禧班 级 计科 0703参与人员学 号 070920093设计任务与要求:作品完成

2、情况:验收情况:验收教师签名:_年 月 日注:1. 除”验收情况 ”栏外,其余各栏均由学生在作品验收前填写。2. “验收情况 ”栏由验收小 组按实际验收的情况如实 填写。目 录1 课程设计过程概述.12 课程设计题目描述和基本设计要求.13 系统需求分析.13.1 功能需求分析13.2 其他需求分析24 系统设计.24.1 总体设计24.2 数据存储设计34.2.1 静态数据34.2.2 计算数据44.3 万年历查询系统界面设计44.4 各功能模块设计64.4.1 阳历日期显示设计64.4.2 农历日期显示设计74.4.3 节气节日显示设计84.4.4 下拉表与今天的查询功能设计94.4.5

3、系统时钟时间显示设计104.5 异常处理情况说明105 系统实现与调试.116 课程设计总结.126.1 遇到的问题及解决办法126.2 心得体会13参考文献.13附录.141万年历查询系统1 课程设计过程概述在 2009 年 6 月,学院对我们进行了为期两周的 Java 课程培训,我们按要求在实验楼二楼网络机房进行了学年度课程设计。这次课程设计的主要目的是结合面向对象程序设计课程,培养我们面向对象软件开发的思维,提高用 Java 编程的实际动手能力并增强大家对面向对象的了解。这次课程设计的主要内容是独立用 Java 语言开发一个小的应用程序、网络应用程序或者是管理系统,从而深刻体会面向对象软

4、件开发的方法。2 课程设计题目描述和基本设计要求我设计的是一个万年历。万年历,实际上就是记录一定时间范围内(比如 100 年或更多)的具体阳历或阴历的日期的年历,方便有需要的人查询使用。在我设计的万年历中,按月份查询,实现了显示查询 19012100 年某月所有日期的阴阳历对照,并且添加了二十四节气与重大节日等信息,界面采用日常的星期与月份结合的格式,方便查看与使用。 基本设计要求如下:(1)能够实现显示 19012100 年的日期,包括公历、农历、星期、二十四节气;(2)能够按照月份格式显示,或按照星期格式显示;(3)能够显示系统日期;(4)尽量使用图形界面实现,要符合日常软件使用规范。3

5、系统需求分析3.1 功能需求分析为了实现一个万年历的功能,首先需要了解阳历日期是怎样分布的;其次,要实现星期与月份格式的显示,则需了解每个月有多少天,这个月的第一天是星期几称为初始星期;要实现阳历与农历信息的同步查询,则必需了解农历日期的分布规律;最后,节气与节日的显示则要找到万年历涉及的年份的节气表,重大节日的规律还是很简单的,反正每年的节日都是固定的,只用一个表就可以查询了。23.2 其他需求分析(1)性能描述界面友好、简洁,查询操作简单,查询完后应该随时都能回到今天的信息当中。(2)设计平台开发工具:jdk1.6 和 eclipse3.2;运行环境:Windows 2000 以上;(3)

6、界面要求以 Windows 窗口形式显示,右上角有最小化按钮、关闭按钮;设置两个下拉表用于查询年月,一个今天按钮用于返回当日信息。4 系统设计4.1 总体设计我设计的万年历查询系统主要功能就是查询与显示。交互界面只有查询与显示当日信息两项,所有信息都已经由数据表与算法结合的方式实现,显示信息由事件调用算法自动刷新。其处理过程图如下:图 1 信息处理图34.2 数据存储设计4.2.1 静态数据(1)星期在 java.util.Calendar.getTime()中返回的是英文信息如 ”sun”,为了便于识别,将其转换成相应的中文”星期日” ,以字符串数组的形式存储,两个数组一一对应,便于实现转换

7、,源代码如下:private String stringWeekEn = new String “SUN”, “MON”, “TUE”, “WED”,“THU”, “FRI”, “SAT” ;private String stringWeekCn = new String “星期日” , “星期一”, “ 星期二”, “ 星期三”,”星期四”, “星期五”, “ 星期六” ;(2)月份月份的存储同星期,以英汉对照式的数组存储,同样便于存取转换。(3)农历农历的算法实现异常困难,这里采用数据表的形式将农历信息保存,使农历与阳历的转换变得易于实现,但这也限制了农历表的实现只能查询到表中的有限个。表

8、中每个十六进制数存有一年的信息,第一位保存闰月信息,中间三位保存 12 个月的信息,最后一位说明今年闰月是几月。以 0x04bd8 为例,是保存了 1900 年的农历信息,最后一位说明今年八月是闰月;第一位要么为 0,要么为 1,为 0 说明闰月只有 29,为 1 则闰月为 30 天;中间三位展开来看有多少位为 1,为零的这个月有 29 天,为 1 的这个月有 30 天。final private static long lunarInfo = new long 0x04bd8, 0x04ae0, 0x0a570, 0x054d5, 0x0d260, 0x0d950, 0x16554, 0x0

9、56a0, 0x09ad0, 0x055d2, ;(4)节气节气同农历的存储一样没有任何规律可言,只能利用数据表的方式将各年的节气信息保存。上面列出的数据是 1900 年的节气表,一年 24 个节气,每个月两个,利用多维数组对应存储,方便取出信息。4表 1 节气表数据类型 数据大小Int 7*12*2String 12*2private final static int solarTermDate= new int6,20,4,18 ,6,21,5 ,20,6,21,6,22,7 ,23,8,23 ,8,23,9,24,8,23,7 ,22 private final static String solarTerm = new String “小寒” , “大寒”, “ 立春”,”雨水”, “惊蛰”, “ 春分” , “清明”, “谷雨 ”, “立夏”, “ 小满”, “ 芒种”,“夏至”, “小暑”, “大暑” , “立秋”, “处暑 ”, “白露”, “

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

当前位置:首页 > 行业资料 > 其它行业文档

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