wait:
1、属于Object的本地方法。
2、暂停当前线程,并释放锁。
3、调用notify()或notifyAll()方法唤醒线程。
sleep:
1、Thread类的静态方法。
2、当前线程休眠,但不释放锁。
3、其他线程可以继续执行,无论该线程优先级高与否。
4、休眠一段时间后,自动执行。
yield:
2、暗示具有相同优先级的其他线程可以使用CPU,运行。
3、没有任何机制保证当前线程会暂停运行并让出CPU。