This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
Louis: It seems both of them can execute tasks on schedule and in a separate thread.
Timer uses only a single thread for the execution of all its tasks. So, if you have a task that takes a long time to process, all the subsequent tasks will be delayed. On the other hand, you can configure the number of threads in a instance of ScheduledExecutorService. Since, the number of threads are more than one so the dependency of scheduling one task over the completion of another is reduced.