import java.awt.*;
import java.awt.event.*;
import javax.swing.*;import java.util.*;
import javax.swing.Timer;public class TestAnonymousClass {
   public static void main(String[] args){
   TalkingClock clock = new TalkingClock();
   clock.start(1000,true);
   JOptionPane.showMessageDialog(null,"Quit program?");
   System.exit(0);
   }
}class TalkingClock{
public void start(int interval,final boolean beep){
ActionListener listener = new ActionListener(){
public void actionPerformed(ActionEvent event){
Date now = new Date();
System.out.println("At the tone,the time is"+now);
if(beep)Toolkit.getDefaultToolkit().beep();
}
};
Timer t = new Timer(interval,listener);
t.start();

}
}
为什么缺了这两句话,线程推出了 希望高手能帮我看下这个问题啊 最好讲明白点 谢谢

解决方案 »

  1.   

    这是JDialog,应该说所有Dialog的特点。当你的Dialog设置该项功能的时候,在你退出那个Dialog界面的之前,在该程序上是无法做任何与该Dialog无关的任何事情。就像你点击浏览器的叉叉退出的时候,它弹出一个Dialog提示你是否退出,那时候你点击浏览器的的任何地方都没用的。而JOptionPane.showMessageDialog就是一个Dialog.