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

第2章 MACROBUTTON AcceptAllChangesInDoc [双击此处键入1级标题]

PAGE 2

- PAGE 1 -

..

Java 设 计 报 告 书

课程名称: JAVA语言程序设计

设计题目: 闹钟的设计与实现

院 系: 计算机科学与信息工程系

学生姓名:

学 号:

专业班级:

指导教师:

2010 年 12 月 28 日

目 录

TOC \o "1-3" \h \z \u HYPERLINK \l "_Toc" 一、题目描述1

HYPERLINK \l "_Toc" 二、设计思路1

HYPERLINK \l "_Toc" 三、运行结果5

HYPERLINK \l "_Toc" 四、源代码6

HYPERLINK \l "_Toc" 五、总结10

HYPERLINK \l "_Toc" 六、参考文献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: JLabel
queding, dakai : JButton
music, RI, SHI, FEN, MIAO : JTextField
h = 0, f = 0, m = 0, r = 0 : int
Fo, foo : boolean
soumd1 : public AudioClip
Clock类中的函数
public clock()
public static void main(String agrs[])
public void run()

2、各方法功能描述列表

Clock类方法

功能

Main()

执行main函数

Clock()

Clock类的构造函数,用于对时钟界面的初始化

Run()

用于对时钟的动态显示的执行,并判断是否设定了闹钟时间,若当前时间与设定的时间相等则播放选定的音乐

3、主要模块算法描述

(1)当前动态时间的显示的设计与实现。

功能:可以实时的更新显示系统完整的时间

算法:引入java.util.Date用while循环更新时间

代码如下

public void run() {
while (true) {
Date now = new Date();//设置一个新的当前时间对象。
dangqian.setText("当前时间: " + now.toString());//显示当前的时间
…
}

(2)音乐文件的选择。

功能:用打开按钮实现对本地音乐文件的选择

算法:引入java.io.File和java.net.MalformedURLException

来实现对音乐本地音乐文件的选择。

代码如下

dakai.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
JFileChooser fileChooser = new JFileChooser(); // 实例化文件选择器
fileChooser
.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); // 设置文件选择模式,此处为文件和目录均可
fileCh