相同点:
1. 都是用来将线程转为阻塞状态的
2. 都是可以被打断的(如:调用线程的interrupt方法),需要捕捉InterruptedException;
不同点:
1. 【来源】wait是Object的方法,sleep是Thread的一个静态方法;
2. 【核心】wait会释放monitor锁,让出cpu使用权,而sleep不会;
3. 【使用】wait需要在同步方法内使用,而sleep不需要;
4. 【使用】wait如果不加具体时间需要手动唤醒,让其退出wait set,而sleep必须添加休眠时间,时间结束后,自动退出阻塞状态。