Cómo detener una tarea de temporización

Estoy intentando hacer un temporizador simple que emite un pitido después de la cantidad de segundos especificada. Logré que funcionara, pero TimerTask continúa ejecutándose después del pitido. ¿Ahora detengo la ejecución? Aquí está mi código:

import java.util.Scanner;
import java.util.Timer;
import java.util.TimerTask;
import java.awt.Toolkit;

class Alarm {

    public static void main(String[] args) {
        long delay;
        Scanner scan = new Scanner(System.in);
        System.out.print("Enter a delay in seconds: ");
        delay = scan.nextInt()*1000;

        Timer timer = new Timer();

        TimerTask task = new TimerTask() {
            @Override
            public void run() {
                Toolkit.getDefaultToolkit().beep();
            }
        };

        timer.schedule(task, delay);
    }
}

Respuestas a la pregunta(3)

Su respuesta a la pregunta