




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
攀枝花学院学生课程设计(论文)题 目: LED时钟 学生姓名: 张奕 学 号: 201210802028所在院(系): 数学与计算机学院 专 业: 信息与计算科学 班 级: 2012级信息与计算科学1班 指 导 教 师: 吴建兵 职称: 讲师 二O一四年六月十六日攀枝花学院教务处制攀枝花学院本科学生课程设计任务书题目时钟(LED方式)1、课程设计的目的通过本课程设计使学生能够较全面的掌握面向对象程序设计的有关概念和开发方法,以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力。2、课程设计的内容和要求(包括原始数据、技术要求、工作要求等)编写一个时钟(LED方式)程序,要求: (1)在屏幕上用文字显示日期(年、月、日、星期)与时间。 (2)时间显示要求能动态显示时、分、秒。3、主要参考文献1朱福喜.Java语言程序设计(第二版).科学出版社2陈国君等.Java程序设计基础(第二版).清华大学出版社3 Deitel.Java大学基础教程(第六版).电子工业出版社 4 MaryCampione.Java语言导学(第四版).机械工业出版社5 Y.Daniel Liang.Java语言程序设计基础篇(第六版). 机械工业出版社6 Kathy Sierra.Head First Java(第二版).东南大学出版社4、课程设计工作进度计划1、设计动员,布置任务,选题(1天) 2、查阅资料,分析、讨论与设计(1天)3、编写程序,进行调试(4天)4、完成模块联调,进行测试(2天)5、成果验收,完成设计报告(2天)指导教师(签字)日期年 月 日教研室意见:年 月 日学生(签字): 接受任务时间: 年 月 日注:任务书由指导教师填写。课程设计(论文)指导教师成绩评定表题目名称时钟(LED方式)评分项目分值得分评价内涵工作表现20%01学习态度6遵守各项纪律,工作刻苦努力,具有良好的科学工作态度。02科学实践、调研7通过实验、试验、查阅文献、深入生产实践等渠道获取与课程设计有关的材料。03课题工作量7按期圆满完成规定的任务,工作量饱满。能力水平35%04综合运用知识的能力10能运用所学知识和技能去发现与解决实际问题,能正确处理实验数据,能对课题进行理论分析,得出有价值的结论。05应用文献的能力5能独立查阅相关文献和从事其他调研;能提出并较好地论述课题的实施方案;有收集、加工各种信息及获取新知识的能力。06设计(实验)能力,方案的设计能力5能正确设计实验方案,独立进行装置安装、调试、操作等实验工作,数据正确、可靠;研究思路清晰、完整。07计算及计算机应用能力5具有较强的数据运算与处理能力;能运用计算机进行资料搜集、加工、处理和辅助设计等。08对计算或实验结果的分析能力(综合分析能力、技术经济分析能力)10具有较强的数据收集、分析、处理、综合的能力。成果质量45%09插图(或图纸)质量、篇幅、设计(论文)规范化程度5符合本专业相关规范或规定要求;规范化符合本文件第五条要求。10设计说明书(论文)质量30综述简练完整,有见解;立论正确,论述充分,结论严谨合理;实验正确,分析处理科学。11创新10对前人工作有改进或突破,或有独特见解。成绩指导教师评语指导教师签名: 年月日摘要随着社会的发展,现在的人过着快节奏的生活。时钟的作用就是不停地提醒人们时间去合理的安排自己的生活。LED屏的时钟的显示更加直接明了,一目了然。本时钟是基于Java开发的一个LED时钟。其功能是能够显示现在的时间,还有年月日。本时钟操作简便,界面干净、简洁。 本课程设计报告介绍了时钟的构成,论述了目标功能模块;给出了时钟设计的步骤。要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好地理解和掌握,能够进行简单分析和判断;能编写出具有良好风格的程序;掌握JAVA程序设计的基本技能和面向对象的概念和方法。同时培养学生进行分析问题、解决问题的能力.有助于我们在学习Java程序设计者们语言是能够活学活用。关键字:时钟,LED,Java目录摘要I1 前言11.1背景11.2目的11.3实验要求12 相关技术分析22.1需求分析22.1.1需求分析22.1.2需求环境22.1.3功能描述22.2技术分析及原理22.2.1技术分析22.2.2原理23 设计与实现33.1时钟的功能概述33.2时钟的数字显示33.3时钟的具体实现34 代码实现44.1模块实现44.1.1显示窗口设计模块44.1.2时间设置模块55 测试与运行66 结束语77 参考文献88 附录91 前言1.1背景 时钟的出现让现在的人们有了准确的时间观念,而不再是以前那样只能通过观察太阳,看沙漏来了解时间。随着科技的进步,时钟现在不只是只有我们常见的时钟,LED时钟因为其简洁明了,使用寿命长而获得了广大人民的喜爱。1.2目的本次的实验是要求学生在Java的平台下写一个写一个LED时钟的小程序。主要是为了锻炼学生的编程能力,看是否能够将自己所学的知识融会贯通,能灵活的运用到所写的程序中去。旨在培养学生的动手能力和综合能力,为学生打下牢实的基础,能够在Java编程方面取得更大的成绩。1.3实验要求按课程设计指导书提供的课题,要求学生在自行完成各个操作环节,并能实现且达到举一反三的目的,完成一个项目解决一类问题。要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好地理解和掌握,能够进行简单分析和判断;能编写出具有良好风格的程序;掌握JAVA程序设计的基本技能和面向对象的概念和方法;了解多线程、安全和网络等编程技术。同时培养学生进行分析问题、解决问题的能力;培养学生进行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。2 相关技术分析2.1需求分析2.1.1需求分析 现在钟表的市场还是很大的特别是在日益忙碌的今天,有一块手表提示人们的生活还是很不错的。而因其简洁的屏幕获得了许多年轻人的喜爱。除此之外,LED时钟还有这价格低廉,使用方便,寿命时间长的特点。因此,我觉得时钟的市场还是挺大的。本次课程设计使用的Java代码比较简单,所以使用的价格也相对更便宜,用户更容易接受。2.1.2需求环境 本次课程设计需求的环境配置如下:硬件配置:安装了JDK的PC机一台;软件要求:windows7/Eclipse2.1.3功能描述 (1) 在屏幕上用文字显示日期(年、月、日、星期)与时间;(2)时间显示要求能动态显示时、分、秒。2.2技术分析及原理2.2.1技术分析 用Java来实现时钟的功能并不是一件难的事儿,相对比较简单,所以对程序员的要求不是很高,都可以编写。本次实验设计主要运用了JFram技术来实现窗口的运行。2.2.2原理本次试验写了三个方法,分别是JFram,led,updateDateTime。它们在整个程序中分别实现了一下功能:写一个能够显示的对话框作载体;主要是设计时间和日期的格式,还有显示时间和日期的方法;将时间和日期进行初始化,本实验将机器的时间赋给程序就不需要再重新去设置时间了。3 设计与实现 3.1时钟的功能概述 本次课程设计的LED时钟具有能够显示时间的功能,还能够在动态的显示时间的同时在屏幕上显示日期。这个可以在提供时间的同时还能够提供日期的显示更加人性化。 3.2时钟的数字显示 由于本次实验是LED时钟,所以采用的是通过数字和汉字来显示具体的时间和具体的日期,简洁明了。 3.3时钟的具体实现 本次实验是在java的基础之上来写代码的。通过java平台,实现了LED时钟的具体显示。在本程序中我主要设计了两个模块。分别是时间格式设计模块,时间更新模块。在时间设计模块中,借用了JFram来写一个能够承载时间显示的显示窗口,分别创建了Jlable实例来表示准确时间和日期。然后对时间和日期进行了格式化,显示出自己想要的格式。然后再将时间和日期加载到显示框中。显示框需要我们对其的大小进行初始化。由于显示窗口时隐藏的,所以需要借用setVisble()方法将窗口显示出来。在时间更新模块中,我使用了Thread这个类,它是程序中执行的线程。它可以使时间和日期同时显示在我们所编写的显示框中。我们将赋给时钟的值初始化为机器上的时间,这样的话用户就可以减少更新时间的麻烦,方便简洁34 代码实现4.1模块实现 本程序分为两个模块来实现对时间的显示。第一个模块主要是对时间显示窗口的设计。通过JFrame来实现整个程序的窗口设计。第二个模块则是对时间的设置。在本实验中,没有实现用户自己调节时间的功能,而是作者直接给程序赋值,添加的是网络时间,比较准确,无需用户自己去更改时间,省去了很多麻烦。4.1.1显示窗口设计模块在此模块使用JFrame创建了显示窗口,并且设置了时间和日期的格式,还有窗口的大小。以下是实现此模块的代码:/设置日期的格式 DateFormat dateFormat = new SimpleDateFormat(yyyy年MM月dd日); /设置时间的格式为24小时制 DateFormat timeFormat = new SimpleDateFormat(H:m:s ); /创建JLable实例 JLabel lblDate = new JLabel();JLabel lblTime = new JLabel();public LED() /JLable实例的文本居中显示lblDate.setHorizontalAlignment(SwingConstants.CENTER);lblTime.setHorizontalAlignment(SwingConstants.CENTER); /设置JPanel的格式是两行一列JPanel jpanel = new JPanel(new GridLayout(2, 1); jpanel.add(lblDate); /加入时间到窗口jpanel.add(lblTime); /加入日期到窗口setSize(400, 300); /设置窗口的大小this.getContentPane().add(jpanel);4.1.2时间设置模块在这个模块设置时钟准确的时间和日期,通过代码的实现,可以将网 络 的值赋给程序做初始化的时间值。这样就不需要经常怕时间不准而去校正时间了,省掉了很多麻烦。以下是此模块的实现代码:/更新时间模块Thread th = new Thread(new Runnable() public void run() while (true) Date now = new Date(); /给日期赋值lblDate.setText(dateFormat.format(now); /给时间进行赋值lblTime.setText(timeFormat.format(now););th.start();5 测试与运行 图5.1 这是程序运行后的界面,上面显示了当天的日期和时间。时间是动态的,因为图片的原因,所以显示是静态的图5.2 该图显示的是当天的日期。 图5.3 该图是程序运行的时间,用24小时制来表示。6 结束语在这次课程设计中,我基本上完成了任务,课题要求基本实现。这次的课题并不算难,但是我还是做了很久。这主要和知识不扎实有关。经过上网查找资料和翻看书籍,最终还是完成了这个课题。经过这次实验,增强了我的分析能力和独自思考能力。本来窗口里的时间是动态的,但是由于是图片的原因所以看起来不是。这次课程设计虽然实现了,但是做出来的窗口显示不太美观,希望下次有时间能够优化一下窗口。还有的是我们学习不能只照书本,要结合实际才能够灵活运用,不然的话学的不扎实就会像我一下做一个小程序就会弄的焦头烂额。希望以后有更多的机会来编写程序,达到学以致用。对Java编程有了一个基本的了解。这些天温习的内容越多,敲得代码越多,自己的学习积极性也越在提高,感觉也越充实。越来越发现现在学习的只是Java的基础,但涉及的面还是很广泛的,这些都为以后进一步学习Java的高级特性打下了扎实的基础。随着课程难度的慢慢加强,今后遇到的困难也必将会越来越多,但我相信自己一定能做好这些的。107 参考文献1朱福喜.Java语言程序设计(第二版).科学出版社2陈国君等.Java程序设计基础(第二版).清华大学出版社3 Deitel.Java大学基础教程(第六版).电子工业出版社 4 MaryCampione.Java语言导学(第四版).机械工业出版社5 Y.Daniel Liang.Java语言程序设计基础篇(第六版). 机械工业出版社6 Kathy Sierra.Head First Java(第二版).东南大学出版社7Java语言与面向对象程序设计M.朱福喜、尹为民、余振坤编著,武汉:武汉大学出版社,2009.3 8Java语言与面向对象程序设计M.印旻编著,北京:清华大学出版社,2010.6 9Java程序设计实用教程M.朱站立、沈伟编著,北京:电子工业出版社,2008.9 10 孙一林、彭波、黄文宏. Java编程技术全接触M. 北京:清华大学出版社,2009.3 11 丁振凡、薛清华. Java语言程序设计M. 北京: 清华大学出版社,2010.10 12 徐林林. Java Web编程从入门到实践M. 北京:清华大学出版社 ,2010.3 13 赵振方、陈景霞. 轻松学Java编程M. 化学工业出版社,2012.8 附录源代码:package shizhong;import java.awt.Font;import java.text.DateFormat;import java.text.SimpleDateFormat;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel; /设计显示窗口public class SHIZHONG extends JFrame public JPanel show_date_time = new JPanel();public JLabel date = new JLabel(Date);public JLabel time = new JLabel(Time);public JLabel show_time = new JLabel(Show Time);public JLabel Show_date = new JLabel(Show Date); /设计时间的显示格式DateFormat dateFormat2 = new SimpleDateFormat(k:mm:ss ); java.util.Date date2; /设计时钟显示窗口的大小public SHIZHONG() this.setSize(400, 300);this.setResizable(false);getContentPane().add(Show_Time_date(); /显示时间public JPanel Show_Time_date() show_date_time.setLayout(null);show_date_time.setBounds(0, 100, 1030, 635);Font f;f = new Font(SansSerif, Font.PLAIN, 15);date.setBounds(50, 100, 100, 30);date.setFont(f);show_date_time.add(date);time.setBounds(700, 100, 100, 30);time.setFont(f);show_date_time.add(time); /创建日期的显示格式DateFormat dateFormat = new SimpleDateFormat(EEEEEEEEE: dd MMMMMMMMM, yyyy.); java.util.Date date = new java.util.Date(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-广西-广西水利机械运行维护工二级(技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广西-广西工程测量员一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东计算机操作员二级(技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-广东-广东水工闸门运行工三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东医技工二级(技师)历年参考题库典型考点含答案解析
- 2020-2025年设备监理师之设备工程监理基础及相关知识高分通关题型题库附解析答案
- 2020-2025年基金从业资格证之私募股权投资基金基础知识通关题库(附答案)
- 2025年中级卫生职称-主管技师-输血技术(中级)代码:390历年参考题库典型考点含答案解析
- 2025年银行金融类-金融考试-期货从业历年参考题库含答案解析(5套)
- 2023年设备监理师之设备监理合同通关提分题库及完整答案
- 校园反霸凌教育课件
- 全国卫生健康系统职业技能竞赛(传染病防治监督)参考试题库(含答案)
- 采伐作业安全课件
- 制造技术部工作总结报告
- 临时彩钢围搭设施工方案
- 储能站施工组织设计施工技术方案(技术标)
- DB11-T 1947-2021 国土空间分区规划计算机辅助制图标准
- 2024年统编版七年级道德与法制上册全册教案汇编(含26个教案)
- 教培机构培训资料如何上好第一次课
- 洗煤厂安全知识培训课件
- 合同制合同范例
评论
0/150
提交评论