问题 问答题

下面程序是一个计时器,从1000秒开始倒计时,直到为0结束。在界面上有两个按钮,一个可以暂停计时,另一个可以继续已经暂停的计时。请更正题中带下划线的部分。
注意:不改动程序的结构,不得增行或删行
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
public class Example3_4 extends Applet

public Color color = Color.red;
private int num= 1000;
public Counter theCounter;
private Button stop;
private Button start;
public void init()

stop = new Button("暂停");
start = new Button ("继续");
theCounter = new Counter(this);
stop.addActionListener(new Lst() implements ActionListener
public void actionPerformed(ActionEvent e)

theCounter.sus();

);
start.addActionListener(new SuspenListener());
add(start);
add(stop);
theCounter.start();

public void paint(Graphics g)

g.setCotor(color);
g.drawString(String.valueOf(num),50,50);

public void setInt(int i)

num=i;

class SuspenListener implements ActionListener

public void actionPerformed(ActionEvent e)

theCounter.conti ();



public class Counter extends Thread

Example3_4 example;
boolean isHold;
Counter (Example3_4 ex)

this.example = ex;
isHold = false;

public void sus()

isHold = true;

public synchronized void conti()

isHold = false;
notify();

public void run()

for (int i = 1000; i>0; i--)

if (i%2 == 1)
example.color = Color.red;
else
example.color = Color.blue;
example.setInt(i);
example.repaint();
try

sleep(1000);
synchronized
while(isHold)
wait ( );


catch (InterruptedException ie)




<HTML>
<HEAD>
<TITLE>Example3_4</TITLE>
</HEAD>
<BODY>
<applet code="Example3_4.class" width=300 height=400>
</applet>
</BODY>
</HTML>

答案

参考答案:①stop.addActionListener(new ActionListener(){
②class Counter extends Thread
③synchronized(this)

解析: 本程序使用线程类“Counter”来实现计时的功能,该线程的线程体每1000毫秒循环一次,并在每次循环的开始显示剩余的时间。计时器的暂停和继续通过线程的同步与共享来完成,每次循环结束时,判断标志暂停的变量“isHold”是否为真,如果为真则进入挂起状态。当用户按下“暂停”按钮,程序调用Counter类的sus()方法,将变量“isHold”设为真。当用户按下“继续”按钮,程序调用Counter类的conti()方法,将变量“isHold”设为假,并使用notify()取消线程的挂起状态。
本题第1个错误是考查对匿名类的使用。匿名类是Java语言中比较特殊的一种类,这种类不存在类名,而且只能在声明的时候被实例化一次。匿名类必须继承于一个父类或实现一个接口。第1条横线处,原程序打算声明一个新类 Lst实现ActionListener接口,并同时实例化一个新对象。但是只有匿名类才能在声明时创建一个新的类对象。因此此处应改用匿名类实现程序的目的。
第2个错误处考查Java源程序的结构。任何一个“java”文件中有且只有一个被声明为public的类,这个类的名字必须与“java”文件的文件名相同。因此在第2个错误位置处必须去掉 public声明。
synchronized用来定义一个同步块。
synchronized的定义格式是synchronized (expression)statement,expression是对象或类的名字,系统将为该对象设置唯一的锁;statement可以是一个方法定义,也可以是一个语句块,在同一时刻只能有一个线程执行这个块中的操作。因此第3个错误处必须指明同步的对象,本题中的同步对象是当前的Counter实例。
运行结果如下图所示。
[*]

单项选择题
单项选择题

美林公司为上市公司、增值税一般纳税企业,适用的增值税税率为17%, 20×7年之前适用的企业所得税税率为15%,20×7年起改为25%,所得税核算采用资产负债表债务法,未来期间很可能获得足够的应纳税所得额用来抵扣可抵扣暂时性差异,20×7年之前未发生任何暂时性差异。
20×7年1月1日,公司“利润分配——未分配利润”账户的贷方余额为510万元,20×7年度公司实现税前会计利润3809.5万元。20×7年度发生的有关经济业务如下:
(1)20×7年1月1日起,公司将一项生产用设备的折旧方法由年限平均法改为年数总和法(税法规定采用直线法计提折旧),该项设备账面原价500万元,预计净残值率4%(与税法规定一致),折旧年限为5年(与税法规定一致),20×4年12月投入使用。
(2)20×7年1月1日,公司应收款项余额为80万元,12月31日应收款项余额为 160万元。年末将坏账准备计提方法由应收款项余额5‰改为账龄分析法后补提坏账准备 1.4万元。按税法规定,坏账准备按期末应收款项余额的5%0计提,可在缴纳所得税前扣除。
(3)20×7年1月1日,公司“存货跌价准备”账户余额为0,12月31日存货账面实际成本865.1万元,可变现净值为860万元,存货按成本与可变现净值孰低法计价。按税法规定,存货变现损失以实际发生的损失在税前扣除。
(4)公司为购买一条生产线,于20×7年4月16日向银行借款800万元,借款期限 5年,年利率为6%;5月15日向另一银行借款1000万元,借款期限3年,年利率 5.4%。5月1日购买的第一批设备运抵公司并开始安装,5月16日支付货款800万元和安装费50万元;6月1日支付货款700万元和安装费100万元;6月15日生产线验收合格交付使用,并支付余款100万元。
(5)20×7年6月5日,公司收到宏达公司分配的现金股利59.5万元,该项股权投资系公司20×5年1月1日购入,公司采用成本法核算。宏达公司适用企业所得税税率15%。
(6)20×7年度,公司以每台售价3.8万元(不含增值税,下同)销售产品5700台给非关联企业;以每台售价3.5万元销售产品1200台给非关联企业。所有的销售均符合收入确认条件,款项均已收到,所销售产品的账面平均成本为每台3万元,未计提存货跌价准备。无产品出口、产品销售退回和销售折让事项发生。
(7)20×7年度,公司以100台产品与另一公司交换原材料一批,双方商定的交换价格(公允价值)为每台3.9万元。该批产品的账面平均成本为每台3万元,未计提存货跌价准备。
(8)20×7年1月1日,公司“应交税费——应交增值税”账户的借方余额为250万元,“应交税费——未交增值税”账户的贷方余额为100万元。20×7年购进货物、接受劳务共支付增值税进项税额1051万元,取得的增值税专用发票及货物运输业发票均通过税务机关认证、审核。12月31日“应交税费——应交增值税”账户和“应交税费——未交增值税”账户的余额均为0。当年未发生减免税款和进项税额转出事项。
(9)20×7年度,公司用银行存款向税务机关缴纳城建税、教育费附加310万元,缴纳印花税、房产税、车船税150万元,缴纳企业所得税1254万元,缴纳代扣的个人所得税200万元。
(9)20×8年2月18日,公司召开董事会,制定如下利润分配方案:按20×7年度净利润的15%提取盈余公积,分配普通股现金股利每10股2.5元(公司总股本为 100000000股,每股面值1元),并批准于20×8年2月25日对外公布财务报告。
根据上述资料,回答下列问题:

美林公司对董事会决定的利润分配方案进行账务处理后,“利润分配——未分配利润”账户的贷方余额为( )万元。

A.445.25

B.2435.25

C.2945.25

D.3375