Java课程设计.docx
- 文档编号:1910359
- 上传时间:2022-10-25
- 格式:DOCX
- 页数:31
- 大小:269.31KB
Java课程设计.docx
《Java课程设计.docx》由会员分享,可在线阅读,更多相关《Java课程设计.docx(31页珍藏版)》请在冰豆网上搜索。
Java课程设计
盛年不重来,一日难再晨。
及时宜自勉,岁月不待人。
课程设计说明书NO.1
多功能电子时钟得设计
1、课程设计的目的
Java语言是面向对象的开发方法是当今世界最流行的开发方法,是当今流行的网络编程语言。
它具有面向对象、跨平台、分布应用等特点。
它不仅具有更贴近自然的语义,而且有利于软件的维护和继承。
很多程序开发人员得第一选择。
为了将课堂上得知识掌握得更加透彻,深刻把握Java语言的重要概念及其面向对象的特性,锻炼学生熟练的应用面向对象的思想和设计方法解决实际问题的能力,开设了Java程序设计课程设计。
让学生自己动手动脑,将书本上得知识运用到实践当中去,使知识能更好得融会贯通。
学习任何知识得目的都是要将它运用到实践中去,所以我们要运用已有的知识,独立得将这个课程设计完成,只有这样,我们才能将知识变成本领,变成属于自己得东西,通过一个学习得学习,我们已经有可一定得Java基础,现在我们就要利用这些基础,来完成课程设计。
这次课程设计我主要研究了利用已学的Java知识编辑一个多功能电子时钟。
通过此次课程设计,来巩固所学Java语言基本知识,增进Java语言编辑基本功,掌握JDK、JCreator等开发工具的运用,拓宽常用类库的应用。
并通过自己动手,自主得学习,对Java这门课程有更深得了解与认识。
2、设计方案论证
2.1课程设计的基本要求
多功能电子时钟是一种多功能得计时工具,它得功能与钟表不同,而是能够将年,月,日通过java程序得到实现,并具有更多的功能,更简洁的外观,更方便的用法,更大的实用价值。
通过多功能电子时钟,我们可以实现很多功能,随意看某年得年份,某年得月份,随意调整某年得某天,并将其显示出来,而且有判断闰年闰月得功能,十分方便万年历有很多作用,顾名思义它是一种很方便得计时计年工具,随着科技得发展,我们已经可以通过计算机制作出精美的万年历,通过计算机制作得万年历不但外观美观,而且功能强大。
除此之外,万年历还具有记事本功能,通过记事本功能可以备忘一些事情,备忘得事情可以随意添加在万年历得任意年月日里,如果记录得内容已经不再需要,还可以任意的将记录得内容进行删除,在删除得时候还会提示。
2.2方案论证
沈阳大学
课程设计说明书NO.2
2.2.1方法
表1方法表
方法名
功能
备注(须输入的参数)
calendar
初始化各种数据
intyear,intmonth,intday
SwitchMonth
选择月份
intmonth
PrintMonth
显示月份
intyear,intmonth,intday
PrintMonthBody
月份体
intstartday,intdayinmonth
IsLeapYear
GetStartDay
GetTotalNumOfDays
GetNumOfDaysInMonth
WriteRecord
ReadRecord
DeleteFile
AboutActionListenerWay
actionPerformed(ActionEvent)
mousePressed
mouseClicked
mouseReleased
mouseEntered
mouseExited
SaveLog
Main
判断是否为闰年
得到开始的天
得到总天数
得到当月的天数
写日记
看日记
删除日记
监听路径
时间表现
鼠标点击
鼠标点击生
点击释放
鼠标进入
鼠标推出
保存日期
主函数
intyear
intyear,intmonth
intyear,intmonth
intyear,intmonth
唯一的主函数
沈阳大学
课程设计说明书NO.3
2.2.2程序流程框图
图1主程序流程图
图2计算阳历程序流程图
沈阳大学
课程设计说明书NO.4
图3时间调整程序流程图
沈阳大学
课程设计说明书NO.5
2.3程序说明
2.3.1成员变量见表2变量表
表2变量表
成员变量描述
变量类型
名称
年、月、日
int
Year、month、day
下一年,下一月
Int
Yearafterquery,monthafterquey
开始的时间
Int
startday
选择月,天
String
SwitchMonth,key,day
改变年
改变月
前一月,前一年
判断是否改变
左、又面板
年、月
左上角信息标签
显示月、年标签
空格标签
右上部时间标签
星期标签数组
月份下拉列表
时间确定按钮
保存、删除按钮
前、下一月按钮
文本区
星期字符串数组
显示天的文本区
输入年的文本区
Int
Int
Int
boolean
JPanel
JLabel
JLabel
JLabel
JLabel
JLabel
JLabel[]
JComboBox
JButton
JButton
JButton
JTextArea
String
JTextField
JTextField
Changeyearmessage
changemonthmessage
priormonth,prioryear
ischange,ischange_priornext
LeftPane,RightPane
YearLabel,MonthLabel
Ask
ShowDate
Blank
NorthMonthDayYear
TopBarTitle[]
MonthCombobox
Query
SouthSave,SouthDelete
PriorMonth,NextMonth
CenterText
week[]
ShowDays[]
YearText
沈阳大学
课程设计说明书NO.6
2.4程序源代码
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
importjavax.swing.event.*;
importjavax.swing.border.*;
importjava.util.Calendar;
importjava.util.*;
importjava.io.*;
importjava.io.IOException;
publicclasscalendarextendsJFrame
implementsActionListener,MouseListener
{
intyear,month,day;
intyearafterquery,monthafterquery;
intstartday;
StringSwitchMonth;
Stringkey;
intchangeyearmessage;
intchangemonthmessage;
intpriormonth;
intprioryear;
booleanischange=false;
booleanischange_priornext=false;
privateJPanelLeftPane,RightPane;
//Leftsub
privateJLabelYearLabel;
privateJLabelMonthLabel;
privateJComboBoxMonthCombobox;
privateJTextFieldShowDays[]=newJTextField[42];
privateJTextFieldYearText;
privateJLabelAsk;
privateJLabelShowDate;
privateJLabelBlank;
privateJLabelTopBarTitle[]=newJLabel[7];
privateJButtonToToday;
privateJButtonQuery;
private
Stringweek[]={"SUN","MON","TUE","WED","THU","FRI","SAT"};
//rightsub
privateJLabelNorthMonthDayYear;
沈阳大学
课程设计说明书NO.7
privateJTextAreaCenterText;
privateJButtonSouthSave,SouthDelete;
privateJButtonPriorMonth;
privateJButtonNextMonth;
publiccalendar(intyear,intmonth,intday)
{
setTitle("MyCalendar&Textbook");
//thelayoutaboutleftofjpane
LeftPane=newJPanel();
JPanelLeftCenter=newJPanel();
JPanelLeftNorth=newJPanel();
//JPanelLeftSouth=newJPanel();
LeftPane.setLayout(newBorderLayout());
LeftPane.add(LeftNorth,BorderLayout.NORTH);
LeftPane.add(LeftCenter,BorderLayout.CENTER);
LeftPane.add(ToToday=newJButton("Gototoday",newImageIcon("../images/Handle.gif")),BorderLayout.SOUTH);
ToToday.setBackground(Color.cyan);
ToToday.addActionListener(this);
LeftPane.validate();
//thelayoutofLeftPane
//LeftPane_North
LeftNorth.setLayout(newGridLayout(3,1,0,-2));
LeftNorth.add(Ask=newJLabel("Pleseinputtheinformationswhichyouwantquery:
"));
JPanelNorth=newJPanel(newFlowLayout(0,8,0));
LeftNorth.add(North);
North.add(YearLabel=newJLabel("Year:
"));
North.add(YearText=newJTextField(4));
YearText.setBackground(Color.getHSBColor(30,20,50));
YearText.setForeground(Color.blue);
YearText.setFont(newFont("TimesRoman",Font.BOLD,17));
YearText.addActionListener(this);
YearText.setFocus
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 课程设计
![提示](https://static.bdocx.com/images/bang_tan.gif)