教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 求职职场 >

java课程设计程序设计报告万年历

来源:网络收集 时间:2026-09-11
导读: java程序设计万年历 XXX学院 学生课程设计(论文) 题 目: 万年历 学生姓名: XXX 学 号: 所在院(系): 数学与计算机学院 专 业: 网络工程 班 级: 2012级 指 导 教 师: 职称: 讲师 2013年12月30日 java程序设计万年历 XXX学院本科学生课程设计任务书

java程序设计万年历

XXX学院

学生课程设计(论文)

题 目: 万年历 学生姓名: XXX 学 号: 所在院(系): 数学与计算机学院 专 业: 网络工程 班 级: 2012级 指 导 教 师: 职称: 讲师

2013年12月30日

java程序设计万年历

XXX学院本科学生课程设计任务书

注:任务书由指导教师填写。

java程序设计万年历

课程设计(论文)指导教师成绩评定表

java程序设计万年历

摘 要

Java编程语言自诞生十几年来,已经成功地运用在网络计算及移动等各个领域。对于开发者来说,它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。此次我们用JAVA来设计一个万年历程序,该程序以网页形式运行,并且支持图形化界面,能以日历的形式显示日期与星期,用户能自己输入日期,支持查找日期,并且能够更新日期,是一个简单易用的小应用。

关键词 JAVA,图形化界面,万年历

java程序设计万年历

1 需求分析

1.1 需求概述

日历是生活中必不可少的物品,传统纸张日历不仅浪费资源而且不易携带,设计这个万年历,以小程序的形式取代传统日历,具有很大的使用性,简单方便。

1.2 需求环境

本课程设计需要的设备为硬件要求和软件配置要求具体要求如下: 1.硬件要求:一台计算机。 2.软件配置:JDK1.6,Eclipse。

1.3 功能描述

本程序要构建的万年历程序,其功能有以下几个方面:

(1)通过网页形式运行,实现图形界面。 (2)能以月历形式显示日期与星期。

(3)支持用户自己输入年份,并提供月份的下拉形式菜单来选择月份。 (4)通过点击“更新”来刷新日历。

java程序设计万年历

2 概要设计

2.1 程序设计思路

1. 总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。然后判断输入的年是否为定义年,若是,令总天数S=1,否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一月到要输出的月份之间的天数累加起来,若该月是闰年中的月份并且该月还大于二月,再使总天数加1,否则,不加,既算出从定义年一月一日到输出年的该月一日的总天数。

2. 输出月份第一天为星期几的算法:使总天数除以7取余加2得几既为星期几,若是7,则为星期日。

3. 算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。

4. 如果年份小于1582年则程序不予判断。

java程序设计万年历

2.2 程序流程图

图2.1 程序流程图

java程序设计万年历

3 详细设计

各模块的功能及程序说明 3.1.初始化组件 import java.applet.Applet; import java.awt.*; import java.util.*; 3.2.初始化数据

public class CalendarApplet extends Applet{

static final int TOP = 70; //顶端距离

static final int CELLWIDTH=50,CELLHEIGHT = 30; //单元格尺寸 static final int MARGIN = 3; //边界距离 static final int FEBRUARY = 1;

TextField tfYear = new TextField("2004", 5); //显示年份的文本域 Choice monthChoice = new Choice(); //月份选择下拉框 Button btUpdate = new Button("更新"); //更新按钮

GregorianCalendar calendar=new GregorianCalendar(); //日历对象

Font smallFont = new Font("TimesRoman", Font.PLAIN, 15); //显示小字体 Font bigFont = new Font("TimesRoman", Font.BOLD, 50); //显示大字体 String days[] = {"星期日", "星期一", "星期二", "星期三","星期四", "星期五", "

java程序设计万年历

星期六"};

String months[] = {"一月", "二月", "三月", "四月","五月", "六月", "七月", "八

月", "九月","十月", "十一月", "十二月"};

int daysInMonth[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; //每个月的

天数

int searchMonth,searchYear; //查询的年份及月份

3.3.绘制程序界面 public void init(){

setBackground(Color.white); //设置背景颜色

searchMonth = calendar.get(Calendar.MONTH); //得到系统年份 searchYear = calendar.get(Calendar.YEAR);

//得到系统月份

add(new Label(" 年:")); //增加组件到Applet

tfYear.setText(String.valueOf(searchYear)); //设置文本域文字 add(tfYear);

add(new Label(" 月:"));

monthChoice.setFont(smallFont); //设置月份选择下拉框的显示字体 for (int i = 0; i < 12; i++) { }

monthChoice.select(searchMonth); //设置下拉框当前选择项 add(monthChoice);

monthChoice.addItem(months[i]); //增加下拉框选项

java程序设计万年历

add(btUpdate);

int componentCount=this.getComponentCount(); //得到Applet中的组件数

for (int i=0;i<componentCount;i++){

getComponent(i).setFont(smallFont); //设置所有组件的显示字体

} }

3.4.程序代码

import java.applet.Applet; import java.awt.*; import java.util.*;

public class A extends Applet{

static final int TOP = 70; //顶端距离

static final int CELLWIDTH=50,CELLHEIGHT = 30; //单元格尺寸 static final int MARGIN = 3; //边界距离 static final int FEBRUARY = 1;

TextField tfYear = new TextField("2004", 5); //显示年份的文本域 Choice monthChoice = new Choice(); //月份选择下拉框

java程序设计万年历

GregorianCalendar calendar=new GregorianCalendar(); //日历对象

Font smallFont = new Font("TimesRoman", Font.PLAIN, 15); //显示小字体 Font bigFont = new Font("TimesRoman", Font.BOLD, 50); //显示大字体

String days[] = {"星期日", "星期一", "星期二", "星期三","星期四", "星期五", "星期六"}; String months[] = {"一月", "二月", "三月", "四月",&qu …… 此处隐藏:3509字,全部文档内容请下载后查看。喜欢就下载吧 ……

java课程设计程序设计报告万年历.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/121748.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)