On a Thread instance, methods wait(...), notify() and notifyAll() are available only because all classes in Java extends Object and therefore automatically inherit the methods. But there are two very good reasons to not call those methods on a Thread instance :
wait(...) method on a Thread ? That the execution of the Thread is suspended, or that acquisition of the object monitor is waited for ?BLOCKED, WAITING, ...), so calling them will corrupt the behavior of the JVMThread myThread = new Thread(new RunnableJob()); ... myThread.wait(2000);