java程序设计论文.docx

上传人:b****3 文档编号:2170949 上传时间:2022-10-27 格式:DOCX 页数:6 大小:30.79KB
下载 相关 举报
java程序设计论文.docx_第1页
第1页 / 共6页
java程序设计论文.docx_第2页
第2页 / 共6页
java程序设计论文.docx_第3页
第3页 / 共6页
java程序设计论文.docx_第4页
第4页 / 共6页
java程序设计论文.docx_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

java程序设计论文.docx

《java程序设计论文.docx》由会员分享,可在线阅读,更多相关《java程序设计论文.docx(6页珍藏版)》请在冰豆网上搜索。

java程序设计论文.docx

java程序设计论文

微波炉模拟应用程序

设计与实践

班级:

软件技术

(1)班

学号:

201015040102

姓名:

*************

指导教师:

张海波

2011年06月06日

 

目录

 

1、应用程序功能需求分析…...........………3

 

二、程序设计主要部分源代码

及功能实现…………………………….....4

 

三、学习心得与收获……………………….....10

 

很长时间以来我一直困惑不已,为什么一些又贵又先进的东西会一点用都没有。

直到我突然想起,计算机不就是一台愚蠢之至却拥有难以置信的做聪明事能力的机器嘛,而程序员不就是聪明绝顶却拥有难以置信的干蠢事的能力的人嘛。

一句话,他们简直就是天生绝配。

2

应用程序功能需求分析

联想现实生活中用到的微波炉,将它的工作原理用应用程序来模拟实现。

这个微波炉模拟应用程序将包含一个允许用户设定微波炉烹调时间的小键盘,同时显示相应的烹调时间,当输入某个时间后,用户可以通过点击StartJButton来启动整个烹调过程。

此时,微波炉上的玻璃窗将改变颜色(由灰色变为黄色),从而模拟食物烹调过程中微波炉内的灯光颜色,相应的定时器也将按每次一秒的速度进行递减。

当时间终止时,该微波炉的玻璃会再次返回到灰色状态(表示微波炉已停止工作),然后,显示文本“Done!

”。

用户可在任何时刻通过点击ClearJButton停止微波炉的工作,然后再重新输入一个新时间。

注意,用户所输入的分钟数不能超过59,秒数也不能超过59;否则,任何无效的烹调时间都将被重置为零。

将要创建的应用程序是一个允许用户输入烹调时间的微波炉模拟程序。

为处理时间数据,需要创建一个称之为CookingTime的类。

此类用于存储分钟数及秒数(微波炉模拟应用程序通过它们记录剩余的烹调时间)。

为使应用程序能够访问和改变分钟数及秒数,还将为该类提供相应的get方法和set方法。

 

3

程序设计主要部分源代码

及功能实现

微波炉模拟应用程序通过使用JPanel组件将其内部的组件组织了起来。

该应用程序需要两个JPanel——一个组织该应用程序中的JButton和JTextField,另一个则代表微波炉的玻璃窗。

相应的模板应用程序已提供了其中的一个JPanel,我们只需添加另外的一个JPanel。

微波炉模拟应用程序中含有一个存储时间(包括分钟和秒)的对象,此对象出自一个烹调时间类(类名为CookingTime)。

在创建微波炉这个类之前要先创建CookingTIme类。

用户是通过点击数字JButton来完成输入的。

每当一个数字JButton被点击时,该JButton上的数字将追加至GUI中用于显示烹调时间的那个JTextField的末尾。

在输入完烹调时间以后,可通过点击StartJButton启动烹调过程,或者是点击ClearJButton重新输入一轮新的时间。

如果点击的是StartJButton,那么将利用Timer组件开启倒计时功能,同时微波炉窗口也将变为黄色,说明该微波炉的灯光已经打开(方便用户观察所烹调的食物)。

每隔一秒钟,会更新剩余烹调的时间的显示。

当倒数计时结束时,会在displayJTextField中显示出文本“Done!

",而微波炉内的“灯光”也将通过窗口变为默认的灰色,表明微波炉已经关闭。

当点击其中任何一个数字JButton时,都会将

输入发送至应用程序中,而输入的数字值也将显示在displayJTextField中。

一旦输入所有数据,便可通过点击StartJButton

4

开启倒计时。

windowJPanel的背景色将被设置为黄色,从而模拟已经打开的微波炉灯光,而clockTimer将在倒计时的过程中,以每隔1秒的速度更新displayJTextField中的内容。

为了能清除原先的输入并重新启动微波炉,可以通过点击ClearJButton来实现。

①代表微波炉的玻璃窗(烹调时显示黄色,停止工作时为灰色);

②显示时间和微波炉工作状态;③输入烹调时间的数字JButton;

④控制微波炉工作状态。

1.定义一个CookingTime类,设置储存分秒信息的实例变量。

publicclassCookingTime

{

privateintminute;

privateintsecond;

对象初始化,定义一个构造方法。

5

publicCookingTime(intminuteValue,intsecondValue)

{

setMinute(minuteValue);

setSecond(secondValue);

2.当设置分钟时,如果分钟数大于0且小于60,将分钟数设置为指定值;否则,将分钟数归零。

publicvoidsetMinute(intvalue)

{

if(value>=0&&value<60)

{

minute=value;

}

else

{

minute=0;

秒数设置方法,同理。

Get方法允许客户程序取得某个实例变量的值。

当执行代码:

minuteValue=timeObject.getMinute();

时getMinute方法将返回timeObject的实例变量minute的值,随后

6

又将其赋予minuteValue。

Set方法允许客户程序设置(即赋予)某个实例变量的值。

例如,当执行代码:

timeObject.setMinute(35);

时,setMinute方法会向实例minute赋予一个新值。

方法setMinute通过将一个有效值赋予minute,而使变量minute保存在一致状态之中(甚至是向set方法传递无效的数据)。

3.用户只能在0-59的范围内为分钟指定某个值,所有不在该范围内的值都将被set丢弃并相应的为minute赋予0值。

当时间对象递减时,如果秒数大于0,将秒数减1,否则,如果分钟数大于0,将分钟数减1,将秒数设置为59。

if(getSecond()>0)

{

setSecond(getSecond()-1);}

elseif(getMinute()>0)

{

setMinute(getMinute()-1);

setSecond(59);

4.控制成员的访问。

privateintminute;

privateintsecond;

7

表示该变量只能被CookingTime类的成员所访问。

5.设定clockTimer的延迟。

clockTimer=newTimer(1000,timerActionListener);

6.启动烹调过程。

开启定时器并打开“灯光”,以表明微波炉正在烹调。

timeToDisplay="";

clockTimer.start();

windowJPanel.setBackground(Color.YELLOW);

7.执行过程中,时间递减。

microwaveTime.tick();

if(!

microwaveTime.isDone())

{

displayJTextField.setText(timeFormat.format(

microwaveTime.getMinute())+":

"+timeFormat.format(

microwaveTime.getSecond()));

8

}

8.烹调过程终止。

else

{

clockTimer.stop();

displayJTextField.setText("Done!

");

windowJPanel.setBackground(newColor(222,222,222));

}

通过使用一个属于程序员定义的类(CookingTime类),创建一个微波炉模拟器,并为定义的类添加了一个构造方法、一些实例变量以及两对get方法和set方法,通过构造方法,可以完成实例变量的初始化操作。

对于每一个实例变量来说,定义相应的get方法和set方法,可实现对该实例变量的安全访问及修改操作。

利用所定义的类及其方法,创建一个CookingTime对象。

通过使用CookingTime类中定义的方法,访问并显示出了一个可由用户指定的微波炉烹调时间(包括分和秒)。

另外利用JPanel模拟出了该微波炉的玻璃门。

9

学习心得与收获

通过此项目,主要学到了声明一个属于自己的类,创建并使用属于自己类的对象,控制实例变量的访问,get方法与set方法的定义。

做项目就是要认真,教材上讲解的非常详细,万事都得靠自己专研,还要多与同学交流经验,学会创新,最快的方式就是以读程度的方式学习!

1.态度第一

摆正自己的心态,不要以为什么东西上网搜搜就可以了,一定要有自己的东西。

只有自己付出过,当程序运行成功时的那种喜悦才会令自己有一种莫名的自豪感。

态度决定一切!

2.兴趣是关键

我的学习完全是兴趣导向的,所以压力并不大。

因为有兴趣,所以我会很想充分理解一切细节。

又因为理解,所以许多原本片片断断的知识都可以渐渐互相融会贯通,累积技术能量,理论和实务之间的藩篱被打破了,学习效率倍增。

学习并快乐着!

3.敢于挑战

不安于现成的程序,要敢于用多种方法实现一个目的。

现在的网

10

络科技很发达,想要一个源程序的确很简单,所以很多人都是在自己都不明白题目要求时,就可以在网上搜到一模一样的代码,根本没有自己的东西。

挑战自我是项艰巨的任务。

只有坚持自己多看代码多写程序才会有更多的收获。

4.不懈追求

要对源代码进行不断地完善,要尽可能地实现课题所要求的功能。

对初学者来说,大量地写程序是必要的,但过了某个阶段之后,写程序所带来的技术能力成长已经到了极限,还不如多花一点时间看书,学新技术和新观念。

可以从实现源程序功能着手,比如添加写模块啊什么的,实现更多功能。

看着自己编的程序能成功运行,这样自己会更感兴趣,也就会乐此不疲。

 

 

11

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1