Java - Timer.cancel () v / s TimerTask.cancel ()

En mi aplicación de Android, ejecuto un temporizador y lo cancelo en algún otro evento:

  class MyTimerTask extends TimerTask {
       override boolean cancel() {
         ...
       }

       override void run() {
         ...
       }
  }

  ...
  Timer t = new Timer();
  t.schedule(new MyTimerTask(),...)
  ...
  t.cancel();

Yo estaba esperandot.cancel() invocar automáticamenteMyTimerTaskescancel() método. Pero ese método nunca se invoca.

Me pregunto qué es exactamente la diferencia entre estos dos métodos y por qué el segundo método no se llama automáticamente.

Respuestas a la pregunta(1)

Su respuesta a la pregunta