当某个方法退出时,该方法中的Timer对象是否存在?

时间:2018-09-21 02:26:11

标签: java swing object reference stack

我最近正在阅读Java Core。这是Java Core Volume I第6.4.5节中的代码:

public void start(int interval,boolean beep){
    class TimePrinter implements ActionListener{
        public void actionPerformed(ActionEvent event){
            System.out.println("At the tone,the time is " + new Date());
            if(beep){
                Toolkit.getDefaultToolkit().beep();
        }
    }
    ActionListener listener=new TimePrinter();
    Timer t=new Timer(interval,listener);
    t.start();
}

我不明白的是两点:

首先,这本书说listener引用传递给javax.swing.Timer构造函数,启动计时器,并退出start()方法。此时,start方法的提示音参数变量不再存在。 为什么beep参数会消失?

第二,当start(interval,beep)方法退出时,Timer对象(即t)是否存在? 非常感谢!

0 个答案:

没有答案