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

上传人:X** 文档编号:55884785 上传时间:2022-10-31 格式:PDF 页数:24 大小:1.06MB
返回 下载 相关 举报
java课程设计万年历程序设计报告.pdf_第1页
第1页 / 共24页
java课程设计万年历程序设计报告.pdf_第2页
第2页 / 共24页
点击查看更多>>
资源描述

《java课程设计万年历程序设计报告.pdf》由会员分享,可在线阅读,更多相关《java课程设计万年历程序设计报告.pdf(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、勿以恶小而为之,勿以善小而不为。刘备丹青不知老将至,贫贱于我如浮云。杜甫 山东科技大学 信息学院 JAVA 程序设计 学 院 :信息科学与工程学院 班 级 :计算机 11-3 学 号 :0230 人人好公,则天下太平;人人营私,则天下大乱。刘鹗以铜为镜,可以正衣冠;以古为镜,可以知兴替;以人为镜,可以明得失。旧唐书魏征列传 姓 名 :赵乐 好学近乎知,力行近乎仁,知耻近乎勇。中庸丈夫志四方,有事先悬弧,焉能钧三江,终年守菰蒲。顾炎武目 录 目 录.1 前言.1 1 需求分析.2 2.概要设计.3 3.各模块的功能及程序说明.5 4测试分析.13 5源程序清单.13 6课程设计体会.22 前言

2、Java 的前身是 Oak,它一开始只是被应用于消费性电子产品中。后来它的开发者们发现它还可以被用于更大范围的 Internet 上。1995 年,Java 语言的名字从 Oak 编程了 Java。1997 年发布。1998 年发布,标志 Java2 的诞生。十多年来,Java 编程语言及平台成功地运用在网络计算及移动等各个领域。Java 的体系结构由 Java 语言、Java class、Java API、Java 虚拟机组成。它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。Java 支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。Java 的平台

3、标准有 Java ME,Java SE 和 Java EE。Java 发展到今天,它的卓越成就及在业界的地位毋庸置疑。目前在众多的支持 Java 的开发工具中主要的 7 有 Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper 和 Eclipse 等。其中 Java Development Kit 简称 JDK 是大多开发工具的基础。以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工具。古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。苏轼其身正,不令而行;

4、其身不正,虽令不从。论语古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。苏轼人不知而不愠,不亦君子乎?论语 2.概要设计 程序设计思路 1.总天数的算法:首先用 if 语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为 366,否则,为 365。然后判断输入的年是否为定义年,若是,令总天数 S=1,否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一月到要输出的月份之间的天数累加起来,若该月是闰年中的月份并且该月还大于二月,再使总天数加 1,否则,不加,既算出从定义年一月一日到输出年的该月一日的总天数。2.输出月份第一天为星期几的算法:使总天数除以 7 取余加 2

5、得几既为星期几,若是 7,则为星期日。3.算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以 7 得 0 换行,即可完整的输出该月的日历。4.如果年份小于 1582 年则程序不予判断。丈夫志四方,有事先悬弧,焉能钧三江,终年守菰蒲。顾炎武好学近乎知,力行近乎仁,知耻近乎勇。中庸程序运行界面 图 2-1 程序运行界面 流程图 初始化程序,获取当前日期 调取当前日期下日志文件绘制界面 判断日期是否更新 开始 以铜为镜,可以正衣冠;以古为镜,可以知兴替;以人为镜,可以明得失。旧唐书

6、魏征列传海纳百川,有容乃大;壁立千仞,无欲则刚。林则徐 3.各模块的功能及程序说明.初始化组件 import.*;import 初始化数据 private Calendar cld=();private String astr=星期一,星期二,星期三,星期四,星期五,星期六,星期日;private DefaultTableModel dtm=new DefaultTableModel(null,astr);结束 大丈夫处世,不能立功建业,几与草木同腐乎?罗贯中吾日三省乎吾身。为人谋而不忠乎?与朋友交而不信乎?传不习乎?论语private JTable table=new JTable(dtm)

7、;制程序界面 public wannianli()super(万年历);etLayout(new BorderLayout(10,0);(true);dd(p5,;().add(p3,;String strDate=().format(new Date().split(-);tart();(200,200,600,320);(false);(true);触发器 public void actionPerformed(ActionEvent e)if()=jtfYear|()=bLastYear|()=bNextYear|()=bLastMonth|()=bNextMonth)int m,y;t

8、ryength()!=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);else (-m);吾日三省乎吾身。为人谋

9、而不忠乎?与朋友交而不信乎?传不习乎?论语常将有日思无日,莫待无时思有时。增广贤文 if()=bNextMonth)if(m=12)(+y);m=1;(m);else (+m);(y,m-1,0);showCalendar(y,m,cld);if()=bAdd)int r=();int c=();if(!().equals(没有选择日期)try File file=new File()+.txt);BufferedWriter bw=new BufferedWriter(new 穷则独善其身,达则兼善天下。孟子穷则独善其身,达则兼善天下。孟子OutputStreamWriter(new Fil

10、eOutputStream(file);();();catch(FileNotFoundException ex)();catch(IOException ex)();if()=bDel)int r=();int c=();File filedel=new File()+.txt);if()if()(日志删除成功);else 忍一句,息一怒,饶一着,退一步。增广贤文穷则独善其身,达则兼善天下。孟子 (日志删除失败);else (没有找到日志文件);public void mouseClicked(MouseEvent e)(null);int r=();int c=();if(r,c)=nul

11、l)(没有选择日期);else (r,c);勿以恶小而为之,勿以善小而不为。刘备人之为学,不日进则日退,独学无友,则孤陋而难成;久处一方,则习染而不自觉。顾炎武 public void mousePressed(MouseEvent e)public void mouseReleased(MouseEvent e)public void mouseEntered(MouseEvent e)public void mouseExited(MouseEvent e)private void showTextArea(Object selected)xt);if()try BufferedReade

12、r br=new BufferedReader(new InputStreamReader(new FileInputStream(filein);String strRead=();(null);while(strRead!=null)(strRead);strRead=();穷则独善其身,达则兼善天下。孟子古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。苏轼 ();catch(FileNotFoundException ex)();catch(IOException ex)();时间获取 class Timer extends Thread以家为家,以乡为乡,以国为国,以天下为天下。管子

13、牧民先天下之忧而忧,后天下之乐而乐。范仲淹;import class wannianli extends JFrame implements ActionListener,MouseListener private Calendar cld=();private String astr=星期一,星期二,星期三,星期四,星期五,星期六,星期日;private DefaultTableModel dtm=new DefaultTableModel(null,astr);private JTable table=new JTable(dtm);etLayout(new BorderLayout(10

14、,0);(true);dd(p5,;().add(p3,;String strDate=().format(new Date().split(-);tart();(200,200,600,320);(false);(true);public void showCalendar(int localYear,int localMonth,Calendar cld)勿以恶小而为之,勿以善小而不为。刘备宠辱不惊,看庭前花开花落;去留无意,望天上云卷云舒。洪应明 int Days=getDaysOfMonth(localYear,localMonth)+-2;Object ai=new Object7;

15、lastTime=0;for(int i=-1;i=Days;i+)aii%7=(i-2);if(i%7=6)(ai);ai=new Object7;lastTime+;(ai);public int getDaysOfMonth(int year,int Month)ength()!=4)throw new NumberFormatException();y=();m=();catch(NumberFormatException ex)(this,请输入 4 位 0-9 的数字!,年份有误,;勿以恶小而为之,勿以善小而不为。刘备人人好公,则天下太平;人人营私,则天下大乱。刘鹗 return;

16、(没有选择日期);for(int i=0;i lastTime+1;i+)(0);if()=bLastYear)(-y);if()=bNextYear)(+y);if()=bLastMonth)if(m=1)(-y);m=12;(m);else (-m);if()=bNextMonth)if(m=12)(+y);m=1;(m);先天下之忧而忧,后天下之乐而乐。范仲淹人不知而不愠,不亦君子乎?论语 else (+m);(y,m-1,0);showCalendar(y,m,cld);if()=bAdd)int r=();int c=();if(!().equals(没有选择日期)try File

17、file=new File()+.txt);BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file);();();catch(FileNotFoundException ex)();好学近乎知,力行近乎仁,知耻近乎勇。中庸大丈夫处世,不能立功建业,几与草木同腐乎?罗贯中 catch(IOException ex)();if()=bDel)int r=();int c=();File filedel=new File()+.txt);if()if()(日志删除成功);else (日

18、志删除失败);else (没有找到日志文件);宠辱不惊,看庭前花开花落;去留无意,望天上云卷云舒。洪应明丈夫志四方,有事先悬弧,焉能钧三江,终年守菰蒲。顾炎武 public void mouseClicked(MouseEvent e)(null);int r=();int c=();if(r,c)=null)(没有选择日期);else (r,c);public void mousePressed(MouseEvent e)public void mouseReleased(MouseEvent e)以铜为镜,可以正衣冠;以古为镜,可以知兴替;以人为镜,可以明得失。旧唐书魏征列传老当益壮,宁移

19、白首之心;穷且益坚,不坠青云之志。唐王勃 public void mouseEntered(MouseEvent e)public void mouseExited(MouseEvent e)private void showTextArea(Object selected)xt);if()try BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream(filein);String strRead=();(null);while(strRead!=null)(strRead);strRead=

20、();();catch(FileNotFoundException ex)常将有日思无日,莫待无时思有时。增广贤文老当益壮,宁移白首之心;穷且益坚,不坠青云之志。唐王勃 ();catch(IOException ex)();public static void main(String args)(true);(true);new wannianli();class Timer extends Thread/显示系统时间 private JLabel lt;private SimpleDateFormat fy=new SimpleDateFormat(G at HH:mm:ss z);priv

21、ate SimpleDateFormat fn=new SimpleDateFormat(G at HH mm ss z);private boolean b=true;public Timer(JLabel lt)以家为家,以乡为乡,以国为国,以天下为天下。管子牧民谋事在人,成事在天!增广贤文 =lt;public void run()while(true)try if(b)(new Date();else (new Date();b=!b;(500);catch(InterruptedException ex)();穷则独善其身,达则兼善天下。孟子一寸光阴一寸金,寸金难买寸光阴。增广贤文

22、6课程设计体会(1)选题目的:本次课程设计为课本后设计题目任选一题进行设计。思考一段时间后,我们组决定做一个万年历的设计。主要考虑到以前时间少课程内容多,JAVA 课程基础内容掌握并不是很抓实,而对于设计一个万年历程序,由于其功能简单设计也相对较易,对于我们组每个人的学习情况比较合适,并且通过设计这样的一个日历小组件,也能使自己对JAVA 的一些基础知识掌握的更加牢固。(2)对于本程序的设计,首先考虑其功能有哪些,需要显示什么,如何进行窗体构建布局,需要用哪些知识点,如相关的类和对象等。最后,就是根据初步设计的功能和布局构架,考虑用源代码进行实现了。经过了长时间的反复编写调试,课本和网上查阅相

23、关资料相关文章,终于完成了整个课程设计。在这个过程中,在把书本上的知识给系统的复习了一下的同时,同时也发现了自己的太多不足,对 JAVA 语言整体知识构架不够熟悉,不能灵活地运用所学的知识点。自己的编程方式也不是太标准,经常出现代码写错而调试很久的低级错误情况出现。通过这次课程设计,我明白了编写程序,不仅要求对课本知识有较深刻的了解,同时要求程序设计者有较强的思维和动手能力。还要熟悉常用的编程技巧和编程思想,不能只关心程序的运行结果,更要注重程序代码的结构,编程者更要有严谨地态度。还有通过设计过程中大量地查阅网络文章,对一些关键知识点逐个地了解并解决相关问题。所以网络这个强大的工具,确实是我们学习之中可以借助的一个很好的帮手。网络是我们学习的最好的老师之一。有问题,问网络,是一个很好的习惯。

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

当前位置:首页 > 研究报告 > 其他报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁