Таймер

Один запуск

public void givenUsingTimer__whenSchedulingTaskOnce__thenCorrect() {

    TimerTask task = new TimerTask() {

        public void run() {

            System.out.println("Task performed on: " + new Date() + "n" +

              "Thread's name: " + Thread.currentThread().getName());

        }

    };

    Timer timer = new Timer("Timer");

    long delay = 1000L;

    timer.schedule(task, delay);

}

Таймер

public void givenUsingTimer__whenSchedulingRepeatedTask__thenCorrect(){

    TimerTask repeatedTask = new TimerTask() {

        public void run() {

            System.out.println("Task performed on " + new Date());

        }

    };

    Timer timer = new Timer("Timer");

    long delay  = 1000L;

    long period = 1000L;

    timer.scheduleAtFixedRate(repeatedTask, delay, period);

}