sleep:
使當前線程睡眠,但是並不釋放鎖
sleep是Thread類的方法
sleep可以用在任何地方
sleep必須捕獲異常
wait:
使當前進程等待,但是釋放鎖。
wait是Object類的方法
wait,包括notify和notifall只能在synchrnized修飾的方法或代碼塊中使用
sleep不需要捕獲異常
關於釋放鎖的理解:
你在人工售票口買票,sleep方法只是讓你站在買票的地點睡會,在睡覺期間別人不能越過你買票。等你醒了就可以直接買票了
但是如果wait方法,你就需要離開當前的位置,一邊去等着,這時候後面排隊的人是可以上前一步去買票的,當有notify通知你可以買票了,你還得老老實實排隊去