返回信息流import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Date;
import javax.swing.JOptionPane;
import javax.swing.Timer;
public class TimerTest {
public static void main(String[] args)
{
ActionListener listener=new TimePrinter();
Timer t=new Timer(1000,listener);
t.start();
JOptionPane.showMessageDialog(null,"quit?");
System.exit(0);
}
}
class TimePrinter implements ActionListener{
public void actionPerformed(ActionEvent event)
{
Date now=new Date();
System.out.println("now "+ now);
Toolkit.getDefaultToolkit().beep();
}
}
程序很简单,就是隔几秒输出时间并且beep一声,java核心技术上的一个小程序。
为什么红色的那两行注释掉后,运行程序完全没有反应?
这是一条镜像帖。来源:北邮人论坛 / java / #20511同步于 2011/10/22
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
问个简单的程序
xhwsolo
2011/10/22镜像同步1 回复
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
因为System.exit(0);整个程序结束了,没来得及输出Toolkit.getDefaultToolkit().beep();
而JOptionPane.showMessageDialog要等你点击弹出的对话框后才会运行到System.exit(0);程序没有结束,后台Timer线程一直在跑