首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面是一个Applet程序,其功能是实现一个计数器,每隔0.15秒计数器数值加1,数值动态变化,并且能够控制计数器的暂停和继续。要求通过使用Swing的构件建立图形用户界面。主要包括一个文本区域,用于显示计数器结果:两个按钮,一个使计数器暂停,一个使计数器
下面是一个Applet程序,其功能是实现一个计数器,每隔0.15秒计数器数值加1,数值动态变化,并且能够控制计数器的暂停和继续。要求通过使用Swing的构件建立图形用户界面。主要包括一个文本区域,用于显示计数器结果:两个按钮,一个使计数器暂停,一个使计数器
admin
2009-01-15
56
问题
下面是一个Applet程序,其功能是实现一个计数器,每隔0.15秒计数器数值加1,数值动态变化,并且能够控制计数器的暂停和继续。要求通过使用Swing的构件建立图形用户界面。主要包括一个文本区域,用于显示计数器结果:两个按钮,一个使计数器暂停,一个使计数器继续工作。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
源程序文件代码清单如下。
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
/*
<applet code="ex19_3.class" width=800 height=400>
</applet>
*/
public class ex19_3 extends JApplet
{
private JTextField jtf=new JTextField(15);
private JButton Hold=new JButton("Hold");
private JButton resume=new JButton("Resume");
private ex19_3th obj19_3th=new ex19_3th();
class ex19_3th extends Thread
{
private int cnt=0;
private boolean bIsHold=false;
public ex19_3th() {start();}
public void hold()
{
bIsHold=true;
}
public synchronized void fauxResume()
{
bIsHold=false;
wait ();
}
public void run()
{
while (true)
{
try {
sleep(150);
synchronized(this)
{
while(bIsHold)
notify();
}
}catch(InterruptedException ie)
{
System.err.println("Interrupted");
}
jtf.setText(cnt);
}
}
}
public void init()
{
Container cp=getContentPane();
cp.setLayout(new FlowLayout());
cp.add(jtf);
Hold.addActionListener(
new ActionListener()
{
public void actionPerformed(ActionEvent ae)
{
obj19_3th.hold ( );
}
});
cp.add(Hold);
resume.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
obj19_3th.fauxResume();
}
});
cp.add(resume);
}
public static void main(String args[])
{
ex19_3 obj19_3=new ex19_3();
String str= obj19_3.getClass().toString();
if(str.indexOf("class") !=-1)
str=str.substring(6);
JFrame frm=new JFrame(str);
frm.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent we)
{
System.exit(0);
}
});
frm.getContentPane().add(obj19_3);
frm.setSize(300, 200);
obj19_3.init();
obj19_3.start{);
frm.setVisible(true);
}
}
ex19_3.html
<HTML>
<HEAD>
<TITLE>ex19_3</TITLE>
</HEAD>
<BODY>
<applet code="ex19_3.class" width=800 height=400>
</applet>
</BODY>
</HTML>
选项
答案
notify() wait() jtf.setText.(Integer.toString(cnt++))
解析
本题主要考查图形用户界面,Swing以及线程同步、共享、死锁相结合的综合应用。解题关键是熟悉wait()方法和notify()方法的含义,wait()必须被声明为synchronized,这样它才能拥有对象锁。fauxResume()把bIsHold标志设为false,并调用notify(),为了唤醒 synchronized子句中的wait(),notify()也必须被声明为synchronized,这样才能在调用notify()之前获得对象锁,然后该对象锁才能在wait()执行时被运用。本题中,第1和第2处,应该在bIsHold为true时调用wait(),而在 fauxResume()中调用notify();第3处,需要对 int类型做转换才能够作为String类型输出,并且要对计数器变量cnt做累加。程序运行结果如下。
转载请注明原文地址:https://www.kaotiyun.com/show/SJnp777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
在考生文件夹下有一表单文件formone.scx.其中包含一个命令按钮。打开该表单文件,然后在表单设计器环境下完成如下操作:(1)将表单的标题设置为“基本操作”;将表单的最大化按钮设置为无效。(2)在表单的数据环境中添加数据表customers.dbf
执行下列一组命令后,选择“职工”表所在工作区的错误命令是()。CLOSEALLUSE仓库INOUSE职工INO
在考生文件夹下创建一个顶层表单myform.scx(表单的标题为“考试”),然后创建并在表单中添加菜单(菜单的名称为mymenu.mnx,菜单程序的名称为mymenu.mpr)。效果如图3-7所示。①菜单命令“计算”和“退出”的功能都通过执行过程完成。
(1)在score_manager数据库中统计选修了课程的学生人数(选修多门时,只计算1次),统计结果保存在一个新表newtable中,表中只有一个字段,字段名为学生人数。(2)使用一对多报表向导建立报表。要求:父表为“学生”,子表为“课程”,从父表中
在考生文件夹下,打开学生数据库sdb,完成如下简单应用:(1)使用查询设计器设计一个名称为svg的查询,查询每个“女”同学的学号(来自student表)、姓名、课程名、成绩和任课教师(来自teacher表的教师名),查询结果按学号升序排序并输出到表one
表单里有一个选项按钮组,包含两个选项按钮Optionl和Option2,假设Option2没有设置Click事件代码,而Option1以及选项按钮组和表单都设置了Click事件代码,那么当表单运行时,如果用户单击Option2,系统将
一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为
软件测试的目的是
数据库应用系统中的核心问题是
边框布局管理器将一个“容器”分成了______个位置。
随机试题
男,14岁,患者血尿伴黑便2天,无既往史,体检肝脾不大,上腹无压痛。血红蛋白70g/L白细胞12.0乘以十的九次方/乙血小板20乘以十的九次方/L。骨髓象示:增生活跃,巨核细胞数量增多,伴成熟障碍。其最可能的诊断是
将1L4mol/L氨水和1L2mol/L盐酸溶液混合,混合后OH-离子浓度为()mol/L。注:氨水解离常数Kb=1.8×10-5
空调水系统和制冷系统管道绝热施工,应在()结束后进行。
企业经营战略的特点是()。
进入3岁后,儿童()。
幼儿园制定教育目标的意义有()
根据下列资料,回答问题。2014年我国货物进出口总额264335亿元,比上年增长2.3%。其中,出口143912亿元,增长4.9%;进口120423亿元,下降0.6%。进出口差额(出口减进口)23489亿元,比上年增加7395亿元。2014
Allofthecellsinaparticularplantstartoutwiththesamecomplementofgenes.Howthencanthesecellsdifferentiateandf
中国共产党对资本主义工商业采取了从低级到高级的国家资本主义的过渡形式。初级形式的国家资本主义是国家对私营工商业实行委托加工、计划订货、统购包销、经销代销等;高级形式的国家资本主义是公私合营。在公私合营期间,合营企业
Internet提供的最常用、便捷的通讯服务是
最新回复
(
0
)