两者都可以暂停线程的执行 1、类的不同:sleep() 是 Thread线程类的静态方法,wait() 是 Object类的方法。 2、是否释放锁:sleep() 不释放锁;wait() 释放锁。 3、用途不同:Wait 通常被用于线程间交互/通信,sleep 通常被用于暂停执行。 4、用法不同:wait() 方法被调用后,线程不会自动苏醒,需要别的线程调用同一个对象上的 notify() 或者 notifyAll() 方法。sleep() 方法执行完成后,线程会自动苏醒。或者可以使用wait(long timeout)超时后线程会自动苏醒