Java课程设计万年历
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
J a v a课程设计万年历集团文件发布号:(9816-UATWW-MWUB-WUNN-INNUL-DQQTY-
河北科技大学
课程设计报告学生姓名:学号:
专业班级:
课程名称: Java程序设计课程设计
学年学期: 2 014 —2 015 学年第 2 学期
指导教师:刘伟
2 0 年月
课程设计成绩评定表
目录
1.课程设计目的...................................................................... . (1)
2.需求分析...................................................................... . (1)
3.总体设计...................................................................... . (1)
4.详细设计...................................................................... . (1)
5.软件测试...................................................................... . (10)
6.课程设计总结...................................................................... .. (11)
一、课程设计目的
(1)熟练使用java语言编写程序,解决实际问题。
(2)初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;
(3)学会自己调试程序的方法并掌握一定的技巧。
二、需求分析
本程序的要求为:
1.使用图形用户界面;
2.本程序能够实现日期与星期的查询。
三、总体设计
(1)可以通过图形界面显示日历。
(2)能以月历形式显示日期与星期。
(3)支持用户自己输入年份,可以通过上一年,下一年等按钮来选择年份和月份。
四、详细设计
1.总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。
2.输出月份第一天为星期几的算法:使总天数除以7取余得几既为星期几,若是0,则为星期日。
3.算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。
4.查询年份必须为四位有效数字,否则不予显示。
程序源代码:
import
import
import
import
import
import;
import
import
import ;
import
import ;
import
import .*;
import
import .*;
import ;
import .*;
import .*;
import .*;
import .*;
import
public class wannianli extends JFrame implements ActionListener{
private Calendar cal= ();
private String [] str = {"星期一", "星期二", "星期三", "星期
四", "星期五", "星期六", "星期日"};
private DefaultTableModel dtm = new
DefaultTableModel(null,str);
private JTable table = new JTable(dtm);
ormat(new"-");
(strDate[0]), (strDate[1])-1, 0);
showCalendar(strDate[0]), (strDate[1]), cal);
(false);ength() != 4)
{ throw new NumberFormatException();
}
y = ());
m = ());
}
catch (NumberFormatException ex)
{
ength() != 4)
{ throw new NumberFormatException(); }
y = ());
m = ());
} catch (NumberFormatException ex)
{
(this, "请输入4位0-9的数字!", "年份有误", ;
return;
}
for (int i = 0; i < lastTime+1; i++)
{
(0);
}
if() == bLastYear)
{
(--y));
}
if() == bNextYear)
{
(++y));
}
if() == bLastMonth)
{
if(m == 1) {
(--y));
m = 12;
(m));