sleep方法是Thread类的静态方法,导致此线程暂停执行指定时间,让出cpu给其他线程,但是监控状态依然保持,当指定的时间到了时,自动恢复,调用sleep()时,对象不会释放锁。wait方法是Object类的方法,对此对象调用wai方法,导致此线程放弃此对象锁,进入等待此对象的等待锁定池,只有对对象发出notify方法或notifyAll后本线程进入对象锁定池准备获取对象锁进入运行状态。