admin 管理员组

文章数量: 887021


2023年12月19日发(作者:织梦岛通关后二周目)

[教材]java日历组件课程设计

一、概述

1) 项目背景

这学期我们学习了Java语言,Java语言是面向对象的开发方法是当今世界最流行的开发方法,是当今流行的网络编程语言,为了巩固学习的面向对象程序设计语言的知识我选择课程设计

2) 编写目的

通过编写Java的应用系统综合实例,总结、回顾和实践面向对象的编程思想以及编程方法,并通过编写程序来掌握Java语言编程技巧,将学习到的知识融会贯通,同时提高调试程序的能力,养成良好的编程习惯,并增强对程序设计整体思路的把握,将知识真正得做到学以致用

3) 软件定义

具有可以查看年、月、日等功能,能够获取今天的日期,并且能够通过下拉年、月的列表调整日期的软件。

4) 开发环境

IDE: NetBeans IDE 7.0 (Build 2)

JDK:Java: 1.6.0_20; Java HotSpot(TM) Client VM 16.3-b01

OS: Windows 7 版本 6.1 运行于 x86 上; GBK; zh_CN

5) 所用的知识

利用Frame框架类、面板类进行图形化界面设计,实现小日历的公历显示等功能。

二、功能说明

【功能描述】

1、该日历具有可以查看年、月、日等功能。能够获取今天的日期,并且能够通过下拉年、月的列表。

2、当程序运行时,显示的时间是系统当前时间;

3、可以手动输入时间,确定后系统要跳转到指定的时间,并显示出星期几. 4、提供一种点击功能,通过点击,可以实现月份的自增,自减,日期的自增,自减功能.

5、要求星期日显示的位置是在星期一前面.

6、系统要提供一种良好的工能扩展接口,以方便以后对本系统进行功能扩展.

【界面描述】

1、最要紧的是界面要足够的清爽.

2、界面布局要合理

3、日历的界面初始大小不宜过大,以300*300为宜

【性能需求】

1、要提供一种良好的异常处理机制。

2、要对发生了异常的事件进行精确的判断,并进行处理。

3、程序的可移植性要好,尽量消除对环境的依赖。

框随时查询其他年月日期。

三、程序类说明

MyCalender类通过继承JApplet实现小程序查看。用JTable显示时间表,通过updateview方法实日期操作后的的更新。通过java Calendar来获取当前日期,通过鼠标、按钮监听用户操作,响应用户操作。

Frame类,主要定义一个窗体框架,用于显示日历信息,并在主函数中只创建一个该窗体对象实现程序功能。

在该日历面板类里又设计了一个内部类CalendarTable表格类,用于布局日历天的显示格式。

Calendar 抽象类定义了足够的方法,让我们能够表述日历的规则。我们也可以自己的 Calendar 实现类,然后将它作为 Calendar 对象返回(面向对象的特性)。

四、软件系统测试说明

测试的设计:针对此系统我们主要采用黑盒测试和白盒测试。下面是具体的测试计划:

1、 黑盒测试:从系统界面入手,采用规则和不规则,合理与不合理的数据为输入,以

观察输出结果是否与预期结果或者是需求分析描述的结果相符。并且详细的记录每

一种测试用例,以备后续的回归测试和分析与总结测试结果用。

2、 白盒测试:从系统的逻辑结构出发,针对结构的每一个分支进行测试。

其次,再辅以单元测试、集成测试、回归测试、以及最终用户的确认测试。

所谓单元测试,是针对程序的每一个功能模块进行测试,等到确认该功能模块正确

无误在进行该模块的集成测试。单元测试保证了每一个功能模块的正确性。

所谓集成测试,是将每一个功能模块以此地、逐步地集成在一起进行测试,以观察

各个功能模块之间的相容性。

如果测试到某一阶段时发现错误,此时我们就必须对源程序进行相应的修改,然后

进行回归测试。

在所有的测试完成且无异常,错误之后。我们把系统交给用户,让用户对本系统进行确认测试。确认测试是最后一道测试工序,它将决定用户是否接收本系统。

测试中发现的问题:

1、界面不能正常显示

原因是对swing组件使用不熟悉,组件与容器 的叠加关系弄混了。

2、日期不能正常显示

原因是java Calendar对象的容错性。

3、通过打开各种不同类型编码的文件,发现有的时候中文会出现乱码。

原因:读取文件的时候采用了InputStreamReader,使用GBK模式读取,这是考虑到大

部分的Windows文本都是GBK编码的,如果打开UTF-8等格式的中文文件,则会出现

乱码。

4、撤销的时候有一些看似一步的步骤会有多部才能撤销

原因:这个是Java提供的UndoManager的问题,解决这个问题可能通过自己编写

UndoManagr可以解决,但是时间和能力有限,目前仍然是对一些操作只能是多步撤销。

五、用户使用说明

右键运行代码run as java application,会显示日历GUI,蓝色域为当前日期,用户可以根据实际需要点击鼠标获取日历。本程序能够实现日期与星期的查询。

具体如下:

(1)运行程序,出现日历界面。日历内容包括年份、月份、星期、日期。星期标题为蓝色,日期背景为红色。

(2)单击年份的组合框侧边箭头,上下点击改变年份,则日历跟随改变。

(3)单击月份下拉框,改变月份,则日历也跟随改变。

(4)蓝色域为当前日期。

结束语

经过短暂的几天的Java程序设计,使我又学到了很多的知识,尤其是运用Java知识去解决实际问题的能力又得到了很大的提高。由于把所学的知识做到很灵活的运用在实际中对于现在的我还有一定的难度,故而在设计的每个的环节中都会多多少少的遇到一些问题。这就促使我去查阅各种资料,或者请教同学,极大的提高我的专业素养,同时对在有些书上的理论知识在实际的运用,以及应该注意的问题有了比较深刻的认识。当然,仍然有些理论问题不是很好的去运用,或者是了解的不深刻。这就使的在实践中的所设计的程序有些功能不是自己所想的那样的完美。不过,既然发现了问题的所在,我就不会放弃的,直至问题得到解决。这些也同时反映出了平时运用知识去实践这方面做的太少。太缺乏经验。对所设计中将所面临的问题认识不够,是Java课程设计让我认识到了这些问题的存在。同时给我提供了去面对这些问题的平台。也使我充分的认识到在以后也应该怎样去实践,怎样去学习一门计算机语言,以及如何去运用这门语言去解决实际问题等等。

通过这次课程设计,我明白了编写程序,不仅要求对课本知识有较深刻的了解,同时要求程序设计者有较强的思维和动手能力。还要熟悉常用的编程技巧和编程思想,不能只关心程序的运行结果,更要注重程序代码的结构,编程者更要有严谨地态度。还有通过设计过

程中大量地查阅网络文章,对一些关键知识点逐个地了解并解决相关问题。

【参考文献】

[1]耿祥义.Java大学实用教程[M].北京:电子工业出版社,2008.5: [2]曾令明.Java程序设计教程[M].北京:北京邮电大学出版社,2007.8

[3]宛延闿.实用Java程序设计教程[M].北京:机械工业出版社,2006.4

[4]叶核亚.Java程序设计实用教程(第2版)[M].北京:电子工业出版社,2008.4

[5]朱喜福.Java程序设计[M].北京:人民邮电出版社,2005.9


本文标签: 测试 问题 系统 进行 程序