java小闹钟课程设计报告

课程设计(综合实验)报告( 2011 -- 20112 年度第 1 学期)名称:课程或实验名称题目:迷你闹钟的设计与实现院系:经济与管理学院班级:学号:学生姓名:指导教师:设计周数:一周成绩:日期:2012 年01 月06 日一、课程设计(综合实验)的目的与要求➢设计目的:通过迷你闹钟的设计和实现,考察学生对JA V A语言的掌握情况,并提高学生对图形用户界面的设计和编程能力。

➢设计要求:1.显示时间功能:迷你闹钟可以即时显示当前时间。

2.闹钟功能:能够根据用户设置的时间来提醒用户,可以用声音或者文字进行提醒。

3.时间设置功能:提供菜单来设置时钟的当前时间,和闹钟的提醒时间。

4.界面设计:可模拟真实钟表界面,也可以用数字界面显示。

要求美观、实用和个性化。

二、设计(实验)正文1.设计迷你闹钟的方法1.1利用CardLayout布局实现时间界面和设置闹钟界面的转换1.2在时间界面设置label1和label2实现当前时间的数字化显示,并利用Date类和SimpleDateFormate类实现界面显示“上午好”或“下午好”。

在label1上绘制模拟钟表实现模拟钟表的界面。

1.3在闹钟设置面板上添加当前时间,通过文本框和标签设置需要设置的闹钟的时、分、秒。

设置列表框提供闹钟的音乐以供选择。

设置开关按钮决定闹钟的开始和结束2.遇到问题2. 1 设置迷你闹钟的界面化时遇到问题通过参考已有的程序加以解决2. 2 设置“闹铃时间”、“开关按钮”、“背景音乐列表框”时,事件的触发和监控遇到问题,经过反复修改调试得到解决。

2. 3 闹铃背景音乐格式设置遇到问题,经过调试和格式转换解决3.待解决问题闹钟的思想是“北京时间”,所以背景音乐中有《天涯共此时》音乐,界面上有北京时间等标识本来想在界面上添加一幅具有北京特色的图片做背景,但反复尝试,遗憾的是均未能成功,添加的背景图片总被上层面板遮挡,希望老师给以指导。

三、课程设计(综合实验)总结或结论总结图形界面设计由界面设计和事件响应两部分组成,图形界面使得用户和程序之间方便地进行交互。

四、参考文献[1] 耿祥义,张跃平, java大学实用教程. 电子工业出版社, 第二版. 2008年9月[2]梁春燕,java课程课件附录(设计流程图、程序、表格、数据等)package javaapplication;import java.applet.Applet;import java.util.Calendar;import java.util.Date;import java.text.SimpleDateFormat;import java.io.File;import .URI;import .URL;import java.applet.AudioClip;import javax.swing.*;import javax.swing.event.ListSelectionEvent;import javax.swing.event.ListSelectionListener;import java.util.GregorianCalendar;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Date;import javax.swing.JFrame;class Alarm extends JFrame implements Runnable, ActionListener {Thread timer = null;JLabel hour1, minute1, second1, hour2, minute2, second2;JLabel nowtime,nowdate, shownow, showset, showring, showswitch;JTextField showhour, showminute, showsecond, sethour, setminute, setsecond;JButton on, off;JScrollPane js;Font F = new Font("TimesRoman", Font.PLAIN, 14);Font mf=new Font("Courier",Font.BOLD,24);JPanel panel2;JTabbedPane t = new JTabbedPane();int time = 1000;boolean can = true, alarm = false, doring = false;int i=0;String musicname[] = { "天涯共此时.wav","清脆自然.wav", "超好听的纯音乐.wav",}; JList jlist;int fixh = 0, fixm = 0, fixs = 0;File musicfile;URI uri;URL url;AudioClip clip;Alarm() {super("桌面小闹钟");add(t);t.setFont(F);Panel1 panel1 = new Panel1();panel2 = new JPanel();t.addTab("北京时间", panel1);t.addTab("闹铃设置", panel2);panel1.setLayout(null);Timer timer = new Timer(1000, this);timer.start();nowtime = new JLabel();panel1.add(nowtime);nowtime.setBounds(0, 200, 300, 30);nowtime.setFont(mf);nowdate=new JLabel();panel1.add(nowdate);nowdate.setBounds(70,0,300,30);nowdate.setFont(mf);panel2.setLayout(null);shownow = new JLabel("现在时间"); showset = new JLabel("闹钟时间"); showring = new JLabel("闹铃设置"); showswitch = new JLabel("闹钟开关"); hour1 = new JLabel("时");minute1 = new JLabel("分");second1 = new JLabel("秒");hour2 = new JLabel("时");minute2 = new JLabel("分");second2 = new JLabel("秒");on = new JButton("on");off = new JButton("off");showhour = new JTextField(" 00", 2); showminute = new JTextField(" 00", 2); showsecond = new JTextField(" 00", 2); sethour = new JTextField("00", 2); setminute = new JTextField("00", 2); setsecond = new JTextField("00", 2);panel2.add(shownow);panel2.add(showset);panel2.add(showring);panel2.add(showswitch);panel2.add(hour1);panel2.add(minute1);panel2.add(second1);panel2.add(hour2);panel2.add(minute2);panel2.add(second2);panel2.add(on);panel2.add(off);panel2.add(showhour);panel2.add(showminute);panel2.add(showsecond);panel2.add(sethour);panel2.add(setminute);panel2.add(setsecond);shownow.setBounds(0, 5, 80, 15); shownow.setFont(F);hour1.setBounds(100, 5, 20, 15); hour1.setFont(F);minute1.setBounds(160, 5, 20, 15); minute1.setFont(F);second1.setBounds(220, 5, 20, 15); second1.setFont(F);showset.setBounds(0, 30, 80, 15); showset.setFont(F);hour2.setBounds(100, 30, 20, 15); hour2.setFont(F);minute2.setBounds(160, 30, 20, 15); minute2.setFont(F);second2.setBounds(220, 30, 20, 15); second2.setFont(F);showhour.setBounds(70, 0, 25, 25); showminute.setBounds(130, 0, 25, 25); showsecond.setBounds(190, 0, 25, 25);sethour.setBounds(70, 25, 25, 25); setminute.setBounds(130, 25, 25, 25); setsecond.setBounds(190, 25, 25, 25);showring.setBounds(0, 250, 80, 15); showring.setFont(F);showswitch.setBounds(0, 420, 80, 15); showswitch.setFont(F);on.setBounds(90, 160, 50, 30);on.setFont(F);off.setBounds(165, 160, 50, 30);off.setFont(F);on.addActionListener(this);off.addActionListener(this);jlist = new JList(musicname);jlist.setVisibleRowCount(5);jlist.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);jlist.setFont(F);js = new JScrollPane(jlist);panel2.add(js);js.setBounds(70, 50, 165, 100);jlist.addListSelectionListener(new ListSelectionListener() {public void valueChanged(ListSelectionEvent event) {i = jlist.getSelectedIndex();}});setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setSize(300,300 );setVisible(true);}public void actionPerformed(ActionEvent e) {if (e.getSource() == on)alarm = true;if (e.getSource() == off){alarm = false;clip.stop();doring = false;} }public void start() {if (timer == null) {timer = new Thread(this);timer.start();}}public void run() {while (timer != null){Date date = new Date();SimpleDateFormat matter1=new SimpleDateFormat(" HH:mm:ss a");SimpleDateFormat matter2=new SimpleDateFormat("yyyy-MM-dd E");nowtime.setText("北京:"+matter2.format(date));nowdate.setText( matter1.format(date)+"好");Calendar cal = new GregorianCalendar();Integer showh, showm, shows;showh = new Integer(cal.get(Calendar.HOUR_OF_DAY));showm = new Integer(cal.get(Calendar.MINUTE));shows = new Integer(cal.get(Calendar.SECOND));if (showh < 10)showhour.setText("0" + showh.toString());elseshowhour.setText(showh.toString());if (showm < 10)showminute.setText("0" + showm.toString());elseshowminute.setText(showm.toString());if (shows < 10)showsecond.setText("0" + shows.toString());elseshowsecond.setText(shows.toString());try {fixh=Integer.parseInt(sethour.getText());fixm=Integer.parseInt(setminute.getText());fixs=Integer.parseInt(setsecond.getText());}catch (Exception e) {}if (alarm){int h=showh,m=showm,s=shows;if ((h==fixh)&&(m==fixm)&&(s==fixs)){doring = true;}}if (doring){musicfile = new File(musicname[i]);uri = musicfile.toURI();try{url = uri.toURL();}catch (Exception exp) {}clip = Applet.newAudioClip(url);clip.play();doring=false;}repaint();try{timer.sleep(time);}catch (InterruptedException e) {}can = true;}timer = null;}public void stop(){timer = null;}}class Panel1 extends JPanel{int hour, minute, second;public void paintComponent(Graphics g) {super.paintComponent(g);Calendar cal = new GregorianCalendar();hour = cal.get(Calendar.HOUR_OF_DAY);minute = cal.get(Calendar.MINUTE);second = cal.get(Calendar.SECOND);int clockRadius = (int) (Math.min(getWidth(), getHeight()) * 0.3);int xCenter = getWidth() / 2;int yCenter = getHeight() / 2;g.drawOval(xCenter - clockRadius, yCenter - clockRadius,2 * clockRadius, 2 * clockRadius);g.drawString("12", xCenter - 5, yCenter - clockRadius + 12);g.drawString("9", xCenter - clockRadius + 3, yCenter + 5);g.drawString("3", xCenter + clockRadius - 10, yCenter + 3);g.drawString("6", xCenter - 3, yCenter + clockRadius - 3);int sLength = (int) (clockRadius * 0.9);int xSecond = (int) (xCenter + sLength* Math.sin(second * (2 * Math.PI / 60)));int ySecond = (int) (yCenter - sLength* Math.cos(second * (2 * Math.PI / 60)));g.setColor(Color.red);g.drawLine(xCenter, yCenter, xSecond, ySecond);int mLength = (int) (clockRadius * 0.65);int xMinute = (int) (xCenter + mLength* Math.sin(minute * (2 * Math.PI / 60)));int yMinute = (int) (yCenter - mLength* Math.cos(minute * (2 * Math.PI / 60)));g.setColor(Color.blue);g.drawLine(xCenter, yCenter, xMinute, yMinute);int hLength = (int) (clockRadius * 0.5);int xHour = (int) (xCenter + hLength* Math.sin((hour % 12 + minute / 60.0) * (2 * Math.PI / 12)));int yHour = (int) (yCenter - hLength* Math.cos((hour % 12 + minute / 60.0) * (2 * Math.PI / 12)));g.setColor(Color.black);g.drawLine(xCenter, yCenter, xHour, yHour);}}public class JavaApplication {public static void main(String[] args) {Alarm alarm=new Alarm();alarm.start();}}注:根据课程设计、综合实验的内容将标题任选其一。

合集下载

java课程设计钟表

java课程设计钟表

java课程设计钟表一、教学目标本章节的教学目标是使学生掌握Java编程语言的基本语法和编程思想,通过制作一个钟表程序,让学生能够理解和运用Java中的面向对象编程思想,熟练使用Java语言实现图形用户界面。

1.理解Java编程语言的基本语法。

2.掌握Java中的面向对象编程思想。

3.熟悉Java语言实现图形用户界面的方法。

4.能够使用Java编程语言编写简单的程序。

5.能够使用Java编程语言实现一个基本的钟表程序。

6.能够运用面向对象编程思想分析和解决问题。

情感态度价值观目标:1.培养学生的编程兴趣,提高学生对计算机科学的热爱。

2.培养学生的团队合作意识,学会与他人分享和交流。

3.培养学生的问题解决能力,勇于面对和克服困难。

二、教学内容本章节的教学内容主要包括Java编程语言的基本语法、面向对象编程思想和图形用户界面设计。

1.Java编程语言的基本语法:包括数据类型、变量、运算符、控制语句等。

2.面向对象编程思想:包括类、对象、封装、继承、多态等。

3.图形用户界面设计:包括Swing组件、事件处理、布局管理等。

三、教学方法为了达到本章节的教学目标,将采用多种教学方法相结合的方式进行教学。

1.讲授法:讲解Java编程语言的基本语法和面向对象编程思想。

2.案例分析法:通过分析钟表程序的案例,让学生理解和掌握Java语言实现图形用户界面的方法。

3.实验法:让学生动手编写和运行Java程序,加深对Java编程语言的理解和掌握。

四、教学资源为了支持本章节的教学内容和教学方法的实施,将准备以下教学资源:1.教材:Java编程语言的相关教材。

2.多媒体资料:包括PPT课件、视频教程等。

3.实验设备:计算机、网络等。

通过以上教学资源的支持,将能够丰富学生的学习体验,提高学生的学习效果。

五、教学评估本章节的教学评估将采用多元化的评估方式,以全面客观地评价学生的学习成果。

1.平时表现:通过观察学生在课堂上的参与程度、提问回答等情况,评估学生的学习态度和积极性。

JAVA实验报告二(运用JavaFx实现时钟动画)

JAVA实验报告二(运用JavaFx实现时钟动画)

JA V A实验报告实验二运用JavaFx实现时钟动画班级:计算机科学与技术1306学号:***********名:***指导教师:***2014 年12 月 1 日目录一.概述 (3)二.总体方案设计 (4)三.详细设计 (4)四.程序的调试与运行结果说明 (5)五.课程设计总结 (7)六.后记 (7)七.附录 (7)参考文献 (9)一概述1.课程设计的目的设计一个带有指针、数字时钟,并且具有秒表功能,能方便我们的使用和操作,为我们以后的使用创造一个良好的平台。

了解和掌握JavaFx基本概念和用法。

把自己所学的理论知识运用到实际操作中去,以此来发现自己的不足,及时的改正。

在实际的操作中学习及运用还没有学过的知识。

最后在调试与测试的过程还可以提升自己的改错能力也是自己经验的积累。

java课程具有比较强的实践性。

上机实验是一个重要的教学环节。

一般情况下学生能够重视实验环节,对于编写程序上机练习具有一定的积极性。

但是容易忽略实验的总结,忽略实验报告的撰写。

对于一名大学生必须严格训练分析总结能力、书面表达能力。

需要逐步培养书写科学实验报告以及科技论文的能力。

拿到一个题目,一般不要急于编程。

正确的方法是:首先理解问题,明确给定的条件和要求解决的问题,然后按照自顶向下,逐步求精,分而治之的策略,按照面向对象的程序设计思路,逐一地解决子问题。

2.课程设计的要求基于JavaFx画出如下所示可动态变化的时钟。

要求按‘start’按钮可启动时钟,按‘stop’按钮可让时钟暂停。

时钟初始时显示当前时间并开始动态变化。

在设计的过程中,需要用到awt组件和Swing容器与组件,布局管理器,事件处理,绘制图形,还运用到了类的继承,事件监听器和线程。

还有自己还没有掌握的2D绘制图形,以及绘制各指针及之间的关系。

为了完成自己的设计,必须API、教材以及相关的资料来解决这些尚未掌握的问题。

在实验一的图形基础上,再设置两个按钮,分别为“Start”和“Stop”按钮,控制时钟的运动和暂停,再通过事件函数来监听事件从而改变事件。

JAVA课程设计 闹钟的设计与实现项目报告 附源代码

JAVA课程设计 闹钟的设计与实现项目报告 附源代码

Java 设计报告书课程名称:JAVA语言程序设计设计题目:闹钟的设计与实现院系:计算机科学与信息工程系学生姓名:学号:专业班级:指导教师:许研2010 年12 月28 日目录一、题目描述 (1)二、设计思路 (1)三、运行结果 (5)四、源代码 (6)五、总结 (10)六、参考文献 (10)闹钟的设计与实现一、题目描述:结合JAVA图形界面的知识设计一个闹钟二、设计思路1、设计要求:编写闹钟钟程序,要求画出时钟面板,动态的显示当前时间,可设定或解除闹钟时间,并提供闹钟服务相应的文字提示功能与可以自己选择闹钟提示声音提示功能,并在闹钟设定的输入框中有简单的排错功能。

2、算法基本描述:本程序先是在框架中新建了一个容器,然后用GridLayout类对面板进行划分,程序引入java.util.Date来显示当前时间,并用一个永真循环,来对当前时间显示的更新,引入java.io.File来实现对文件的读写操作,程序设计了一个选择按钮,用来选择文件,并且声明只能选择,WAU、MID的文件,引入用java.applet.Applet 来播放音乐文件,用getText()函数获取输入的闹钟设定时间,并永真循环和当前的时间进行对比,若相等则播放音乐,若不相等则显示离目标设定时间的差距。

3、设计思想与内容1、画出类的UML简图Clock类:Clock类中的变量ri, shi, fen, miao, dangqian, guanji: JLabe lqueding, dakai: JButtonmusic, RI, SHI, FEN, MIAO: JTextFieldh = 0, f = 0, m = 0, r = 0 :intFo, foo: booleansoumd1: public AudioClipClock类中的函数public clock()public static void main(String agrs[])public void run()2、各方法功能描述列表Clock类方法功能Main()执行main函数Clock()Clock类的构造函数,用于对时钟界面的初始化Run()用于对时钟的动态显示的执行,并判断是否设定了闹钟时间,若当前时间与设定的时间相等则播放选定的音乐3、主要模块算法描述(1)当前动态时间的显示的设计与实现。

java钟表课程设计

java钟表课程设计

java钟表课程设计一、课程目标知识目标:1. 学生能理解并掌握Java语言中面向对象编程的基本概念,如类、对象、属性、方法等;2. 学生能够运用Java语言编写一个简单的钟表程序,实现时间显示、时间更新等功能;3. 学生了解并掌握Java中事件处理机制,实现钟表界面的交互功能。

技能目标:1. 学生能够运用所学知识,独立完成一个具有基本功能的钟表程序设计;2. 学生通过实际编程操作,提高问题分析、程序设计、调试与优化的能力;3. 学生能够在团队协作中发挥自己的优势,与他人共同完成项目任务。

情感态度价值观目标:1. 学生通过课程学习,培养对编程的兴趣和热情,增强学习动力;2. 学生在课程实践中,体验编程解决问题的成就感,提高自信心;3. 学生在团队协作中,学会相互尊重、沟通与协作,培养良好的团队精神。

课程性质:本课程为实践性较强的课程,以项目驱动的方式进行教学,使学生能够将所学知识应用于实际项目中。

学生特点:本年级学生已经具备一定的Java编程基础,具有较强的学习能力和探究精神,对实际项目有较高的兴趣。

教学要求:结合学生特点,课程设计需注重实践操作,鼓励学生独立思考和团队协作,提高编程能力和解决问题的能力。

通过分解课程目标为具体学习成果,为后续教学设计和评估提供依据。

二、教学内容1. 面向对象编程基础:- 类与对象的概念及其关系- 方法定义与调用- 属性的定义与使用2. Java界面设计:- Java Swing图形用户界面- 常用组件的使用(如按钮、文本框等)- 布局管理器的应用3. 事件处理机制:- 事件的概念与分类- 事件监听器与事件处理方法- 常用事件处理机制的应用4. 钟表程序设计:- 钟表界面设计- 时间更新功能的实现- 闹钟功能的添加与实现5. 项目实践与团队协作:- 学生分组,明确项目任务与分工- 各组制定项目计划,进行项目实践- 项目成果展示与评价教学内容安排与进度:第一周:面向对象编程基础,类与对象的概念,方法的定义与调用第二周:Java界面设计,Swing组件的使用,布局管理器的应用第三周:事件处理机制,编写简单的事件处理程序第四周:钟表程序设计,实现时间显示与更新,添加闹钟功能第五周:项目实践与团队协作,完成项目任务,进行成果展示与评价教材章节关联:《Java程序设计》第四章:面向对象编程基础第五章:Java图形用户界面设计第六章:事件处理三、教学方法1. 讲授法:- 对于面向对象编程基础、Java界面设计、事件处理机制等理论知识,采用讲授法进行教学,为学生提供清晰的知识框架和概念体系。

java课程设计闹钟

java课程设计闹钟

java课程设计闹钟一、教学目标本章节的教学目标分为三个部分:知识目标、技能目标和情感态度价值观目标。

知识目标:学生需要掌握Java基础语法、面向对象编程思想、事件处理机制等知识。

技能目标:学生能够运用Java语言实现一个简单的闹钟程序,具备分析和解决问题的能力。

情感态度价值观目标:培养学生对编程的兴趣,增强其自主学习和创新意识。

二、教学内容本章节的教学内容主要包括以下几个部分:1.Java基础语法:变量、数据类型、运算符、控制结构等。

2.面向对象编程:类、对象、封装、继承、多态等。

3.事件处理机制:事件监听器、事件处理函数等。

4.闹钟程序实现:分析需求、设计界面、编写代码、调试运行等。

三、教学方法本章节的教学方法采用讲授法、案例分析法和实验法相结合的方式。

1.讲授法:用于讲解Java基础语法和面向对象编程知识。

2.案例分析法:通过分析实际案例,让学生理解事件处理机制和闹钟程序的实现。

3.实验法:让学生动手编写和运行代码,培养实际操作能力。

四、教学资源本章节的教学资源包括教材、多媒体资料和实验设备。

1.教材:用于引导学生学习Java基础语法和面向对象编程知识。

2.多媒体资料:用于辅助讲解和展示案例分析,增强学生的学习兴趣。

3.实验设备:为学生提供实践操作的平台,培养实际编程能力。

五、教学评估本章节的评估方式包括平时表现、作业和考试三个部分,以保证评估的客观性和公正性。

1.平时表现:通过课堂参与、提问、讨论等方式评估学生的学习态度和积极性。

2.作业:布置与章节内容相关的编程作业,评估学生的理解和应用能力。

3.考试:期末进行闭卷考试,全面测试学生对Java基础语法、面向对象编程和事件处理机制的掌握程度。

六、教学安排本章节的教学安排如下:1.教学进度:按照教材的章节顺序进行教学,确保学生系统地掌握知识。

2.教学时间:共计30课时,每课时45分钟,包括课堂讲解、案例分析和实验操作。

3.教学地点:教室和计算机实验室,以便学生进行实际操作。

java时钟小程序课程设计

java时钟小程序课程设计

java时钟小程序课程设计一、课程目标知识目标:1. 理解Java编程语言中时间处理的基本概念;2. 掌握使用Java语言实现时钟小程序的核心语法,如线程控制、事件处理等;3. 学习Java中日期时间API的使用,如java.util.Calendar和java.time包;4. 了解界面设计中布局管理器的应用。

技能目标:1. 能够编写Java程序,实现一个具有基本计时功能的时钟小程序;2. 能够运用所学知识,对时钟小程序进行界面设计和优化;3. 学会使用调试工具,进行程序错误排查和修正;4. 培养问题解决和编程实践能力,能够独立完成时钟小程序的开发。

情感态度价值观目标:1. 培养学生对编程的兴趣,激发创造力和探究精神;2. 增强学生的团队合作意识,培养在项目开发中相互协作的能力;3. 强化学生的程序逻辑思维,提高分析问题和解决问题的能力;4. 培养学生严谨的科学态度和良好的编程习惯。

本课程设计针对高年级学生,他们在前期课程中已具备Java语言基础,能够适应本课程的知识深度。

课程性质为实践性、综合性课程,要求学生将理论知识与实际操作相结合,通过完成时钟小程序的设计与实现,达到巩固知识、提升技能、培养情感态度价值观的目标。

通过具体学习成果的分解,教师可进行有针对性的教学设计和评估,确保课程目标的实现。

二、教学内容1. Java基本语法复习:变量声明与使用、数据类型、运算符、控制流程(条件语句、循环语句);2. 线程概念与使用:线程的创建、启动、同步,以及线程的生命周期;- 教材章节:第8章“多线程编程”;3. Java时间处理API介绍:java.util.Calendar类的使用,java.time包中LocalTime、LocalDate、LocalDateTime类的使用;- 教材章节:第11章“日期和时间处理”;4. 界面设计基础:Swing图形用户界面设计,布局管理器介绍及应用;- 教材章节:第14章“Swing用户界面设计”;5. 时钟小程序实现:设计并实现一个简单时钟界面,完成计时功能;- 结合教材实例,进行拓展教学;6. 程序调试与优化:使用调试工具进行程序错误查找,优化程序性能;- 教材章节:第16章“程序调试与优化”;7. 项目实践:小组合作,完成一个具有附加功能(如闹钟、计时器等)的时钟小程序开发。

java课程设计闹钟

java 课程设计闹钟一、教学目标本章节的教学目标为:知识目标:使学生掌握Java编程语言的基本语法和结构;让学生了解并掌握面向对象编程的基本概念和方法。

技能目标:培养学生运用Java语言进行程序设计的能力;培养学生运用面向对象的思想解决实际问题的能力。

情感态度价值观目标:培养学生对计算机科学的兴趣和热情;培养学生勇于探索、积极思考的科学精神。

二、教学内容本章节的教学内容为:1.Java编程语言的基本语法和结构,包括数据类型、运算符、控制结构等;2.面向对象编程的基本概念,包括类、对象、继承、多态等;3.Java编程语言的应用实例,包括计算器程序设计、闹钟程序设计等。

三、教学方法本章节的教学方法为:1.讲授法:通过讲解Java编程语言的基本语法和结构,让学生掌握编程的基本知识;2.案例分析法:通过分析具体的Java编程实例,让学生了解编程语言的应用;3.实验法:让学生动手编写Java程序,培养学生的编程能力和实践能力。

四、教学资源本章节的教学资源为:1.教材:《Java编程语言》;2.参考书:《Java核心技术》;3.多媒体资料:Java编程语言的教学视频;4.实验设备:计算机。

五、教学评估本章节的教学评估方式为:1.平时表现:通过课堂参与、提问、讨论等方式评估学生的学习态度和积极性;2.作业:通过学生提交的作业评估学生的编程能力和理解程度;3.考试:通过期末考试评估学生对Java编程语言的掌握程度。

评估方式应客观、公正,能够全面反映学生的学习成果。

六、教学安排本章节的教学安排为:1.教学进度:按照教材的章节顺序进行教学,确保学生在每个阶段都能够掌握相应的知识点;2.教学时间:安排每周固定的课时进行教学,保证学生有足够的时间学习和发展;3.教学地点:选择适合编程实践的实验室或者教室,提供给学生良好的学习环境。

教学安排应合理、紧凑,确保在有限的时间内完成教学任务,同时考虑学生的实际情况和需要。

七、差异化教学本章节差异化教学的内容为:1.根据学生的学习风格,提供不同的教学方式,如视觉教学、动手实践等;2.根据学生的兴趣,提供不同的编程项目,如游戏开发、设计等;3.根据学生的能力水平,提供不同难度的编程任务,让学生能够挑战自我,不断提高。

时钟(LED方式)java课程设计

摘要随着经济全球化的发展,推动生活节奏的加快,也给时间赋予了更重要的意义。

基于方便人们更好的掌握时间,我设计出了这个小时钟。

本时钟是一个基于Java语言设计而成的一个小程序,目的是显示日期和时间,并且能调准时钟。

整个程序从符合操作简便、界面友好、灵活使用的要求出发,完成调用、调整的全过程。

本课程设计报告介绍了时钟的构成,论述了目标功能模块;给出了时钟设计的步骤。

要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好地理解和掌握,能够进行简单分析和判断;能编写出具有良好风格的程序;掌握JAVA程序设计的基本技能和面向对象的概念和方法;了解多线程、安全和网络等编程技术。

同时培养学生进行分析问题、解决问题的能力;培养学生进行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。

关键字时钟,Java程序设计,面向对象,设计目录摘要..............................................................................................................................- 1 - 1前言..........................................................................................................................- 3 -1.1 课程设计目的 ....................................................................................................- 3 -1.2 课程设计的实验环境..........................................................................................- 3 -1.3 课程设计的预备知识..........................................................................................- 3 -1.4 课程设计要求 ....................................................................................................- 3 -2 可行性分析................................................................................................................- 4 -2.1 社会可行性........................................................................................................- 4 -2.2 市场可行性........................................................................................................- 4 -2.3 技术可行性........................................................................................................- 4 -2.4 经济可行性........................................................................................................- 4 -3 总体设计....................................................................................................................- 5 -3.1开发平台 ............................................................................................................- 5 -3.2时钟功能的概述..................................................................................................- 5 -3.3时钟数字显示 .....................................................................................................- 5 -3.3时钟指针显示 .....................................................................................................- 5 -3.4时钟的设置.........................................................................................................- 5 -4 代码设计....................................................................................................................- 6 -4.1 部分源码............................................................................................................- 6 -5 界面设计....................................................................................................................- 9 -5.1课程设计主要内容 ..............................................................................................- 9 -5.2概要设计 ............................................................................................................- 9 -5.2.1自定义类说明...........................................................................................- 9 -5.3表单设计 .......................................................................................................... - 10 -5.4 界面展示.......................................................................................................... - 11 -5.4.1日期的界面 ............................................................................................ - 11 -5.4.2 部分代码 ............................................................................................... - 11 -5.4.3 时间的界面............................................................................................ - 12 -5.4.4 部分代码 ............................................................................................... - 12 -5.4.5整体界面................................................................................................ - 14 - 6结束语....................................................................................................................... - 15 - 参考文献................................................................................................................ - 16 -攀枝花学院java课程设计前言1 前言1.1 课程设计目的《JAVA程序设计》是计算机相关专业的必修专业基础课程,其实践性、应用性很强。

java课程设计小时钟

import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.awt.geom.*;import java.util.Date;class Clock1 extends Canvas implements ActionListener{ Date date ;javax.swing.Timer secondTime;int hour,munite,second;Line2D secondLine,muniteLine,hourLine;int a,b,c;double pointSX[]=new double[60],pointSY[]=new double[60],pointMX[]=new double[60],pointMY[]=new double[60],pointHX[]=new double[60],pointHY[]=new double[60];Clock1(){secondTime=new javax.swing.Timer(1000,this);pointSX[0]=0;pointSY[0]=-100;pointMX[0]=0;pointMY[0]=-90;pointHX[0]=0;pointHY[0]=-70;double angle=6*Math.PI/180;for(int i=0;i<59;i++){pointSX[i+1]=pointSX[i]*Math.cos(angle)-Math.sin(angle)*pointSY[i]; pointSY[i+1]=pointSY[i]*Math.cos(angle)+pointSX[i]*Math.sin(angle); pointMX[i+1]=pointMX[i]*Math.cos(angle)-Math.sin(angle)*pointMY[i]; pointMY[i+1]=pointMY[i]*Math.cos(angle)+pointMX[i]*Math.sin(angle); pointHX[i+1]=pointHX[i]*Math.cos(angle)-Math.sin(angle)*pointHY[i];pointHY[i+1]=pointHY[i]*Math.cos(angle)+pointHX[i]*Math.sin(angle); }for(int i=0;i<60;i++){pointSX[i]=pointSX[i]+120;pointSY[i]=pointSY[i]+120;pointMX[i]=pointMX[i]+120;pointMY[i]=pointMY[i]+120;pointHX[i]=pointHX[i]+120;pointHY[i]=pointHY[i]+120;}secondLine=new Line2D.Double(0,0,0,0);muniteLine=new Line2D.Double(0,0,0,0);hourLine=new Line2D.Double(0,0,0,0);secondTime.start();}public void paint(Graphics g){for(int i=0;i<60;i++){int m=(int)pointSX[i];int n=(int)pointSY[i];if(i%5==0){g.setColor(Color.red);g.fillOval(m-4,n-4,8,8);}else{g.setColor(Color.blue);g.fillOval(m-2,n-2,4,4);}}g.fillOval(115,115,10,10);Graphics2D g_2d=(Graphics2D)g;g_2d.setColor(Color.red);g_2d.draw(secondLine);BasicStroke bs=newBasicStroke(3f,BasicStroke.CAP_ROUND,BasicStroke.JOIN_MITER);g_2d.setStroke(bs);g_2d.setColor(Color.blue);g_2d.draw(muniteLine);bs=newBasicStroke(6f,BasicStroke.CAP_BUTT,BasicStroke.JOIN_MITER);g_2d.setStroke(bs);g_2d.setColor(Color.black);g_2d.draw(hourLine);}public void actionPerformed(ActionEvent e){if(e.getSource()==secondTime){date=new Date();String s=date.toString();hour=Integer.parseInt(s.substring(11,13));munite=Integer.parseInt(s.substring(11,13));second=Integer.parseInt(s.substring(11,13));int h=hour%12;a=second;b=munite;c=h*5+munite/12;secondLine.setLine(120,120,(int)pointSX[a],(int)pointSY[a]);secondLine.setLine(120,120,(int)pointMX[b],(int)pointMY[b]);secondLine.setLine(120,120,(int)pointHX[c],(int)pointHY[c]);repaint();}}}public class Clock{public static void main(String args[]){javax.swing.JFrame win=new javax.swing.JFrame();win.setSize(400,400);win.add(new Clock1());win.setVisible(true);}}。

java课程设计

面向对象的程序设计课程设计报告题目:音乐时钟闹铃专业计算机科学与技术班级1120701姓名肖建峰学号 201120070117指导教师桂颖完成日期 2013.6.27目录1、需求分析2、实现目标3、相关技术4、系统设计5、系统框架6、系统实现7、系统维护与实现8、心得体会一、需求分析1.任务描述:用java语言实现时钟闹钟的设计,设计的时钟闹铃能够完成以下功能:正确的指针位置、日期、时间的数字显示;在设定的时间用铃声提醒,若当前时间为设置的时间时,会伴随着铃声,时间持续约1分钟。

若关闭闹铃,则铃声停止。

2.需求分析:(1)该闹铃系统可用于到时响铃功能(可设置多组闹铃);(2)该闹铃系统只需要用户给其设置闹铃时间;(3)该闹铃系统与用户的交互完全靠按键实现;(4)该闹铃系统界面在外观上要求美观。

其中最重要的是闹铃的可操作性强,能够完成必要的功能;(5)该闹铃系统的相应时间0.1秒左右。

(6)该闹铃系统出现故障时,重启系统即可。

二、实现目标1.实验目的:通过时钟闹铃的设计和实现,充分掌握java语言,提高对图形界面及小程序的设计和编程能力。

学会时钟的制作方法;能够采用布局管理器来安排动态文字的位置;能够随机获取变动的系统时间等等。

2.实现功能:(1)正确的指针位置;(2)正确的日期、时间的数字显示;(3)在设定的时间用铃声提醒,若当前时间为设置的时间时,会伴随着铃声,无控制的情况下,时间持续约1min,若关闭闹铃功能,则闹铃停止。

(4)动态时钟画面准确的显示当前时间。

3.主要用途及性能要求:时钟闹铃在设置时间后能够及时准确的提醒时间,例如:设置起床闹铃,设置开会、面试等重要事件的时间,这样可以提醒你避免忘记。

对于性能要求动态时钟画面准确的显示当前时间,面板上也能够显示当前的日期时间。

时钟闹铃能够精确的显示系统时间,时间指针也能够精确的指向时间刻度。

设置闹铃后能够及时的完成闹铃功能,而且在无控制的情况下,时间持续约1min。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档