回调是指某个特定事件发生时应该才去的措施。以java定时器说明回调,定时器要求传递的对象所属类实现了java.awt.event包中的ActionListener接口。
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.*;
import javax.swing.*;
import javax.swing.Timer;
class TimerPrinter implements ActionListener { //实现ActionListener接口的类
public void actionPerformed(ActionEvent event) //实现ActionListener接口中的唯一方法 申明为public
{
Date now=new Date();
System.out.println("At the tone,the time is"+now);
Toolkit.getDefaultToolkit().beep();
}
}
public class TimeCallback {
public static void main(String[] args)
{
ActionListener listener=new TimerPrinter();
Timer t=new Timer(1000,listener);
t.start();
Date now=new Date();
JOptionPane.showMessageDialog(null,"已经是"+now+"了,还在睡觉");
System.exit(0);
}
}
PS:一个Java文件只能有一个同名public类,不能有其他public类。class为默认申明方式。下图附上访问权限: