This week's book giveaway is in the Mac OS forum. We're giving away four copies of a choice of "Take Control of Upgrading to Yosemite" or "Take Control of Automating Your Mac" and have Joe Kissell on-line! See this thread for details.
If you extend Thread, each instance will automatically have a reference in a ThreadGroup - this has some implications for locating instances of your class and other stuff. See the java.lang.ThreadGroup JavaDocs. Bill
It's been noted many times that it was probably a mistake for Thread to implement Runnable: it confuses the task with the worker. Since one almost never overrides Thread methods other than run, keep it simple and implement Runnable and then use Thread without subclassing: How bad is it that Thread implements Runnable? At another Java site, I saw some nasty code where someone tried to "restart" a thread like this: