Site hosted by Angelfire.com: Build your free website today!
 

Callbacks

class Timer {
   int interval;
   TimerClient client;
   Timer(TimerClient client, int interval) {
        this.client = client;
        this.interval = interval;
   }
   void run() {
        while (true)
            for (int i = 0; i < interval; i++)
                client.timerFired();  // callback
   }
}
public class TimerClient {
    TimerClient() {
        Timer t = new Timer(this, 10000000);
        t.run();
    }
    public void timerFired() {
        System.out.println("Timer Fired.");
    }
    public static void main(String[] args) {
        new TimerClient();
    }
}