第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

請(qǐng)問(wèn),在這個(gè)例子中,為什么不能用 thread.sleep(1000),而只能用 Thread.sleep(1000)

IDE提示,也可以改為 WrongWayStopThread.sleep(1000)

這里的 Thread是否等同于 thread呢?

正在回答

5 回答

你可以去API中查下sleep方法的解釋?zhuān)荰hread的靜態(tài)方法,而靜態(tài)方法調(diào)用時(shí)用類(lèi)去調(diào)用而不是實(shí)體對(duì)象去調(diào)用

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

小羊愛(ài)主 提問(wèn)者

非常感謝!
2015-08-11 回復(fù) 有任何疑惑可以回復(fù)我~

因?yàn)槿绻{(diào)用Sleep方法 就只是執(zhí)行一次

0 回復(fù) 有任何疑惑可以回復(fù)我~

我的樓層按時(shí)間,不按空間- -。

0 回復(fù) 有任何疑惑可以回復(fù)我~

首先你要知道一個(gè)概念:

?main方法本身就是一個(gè)線程。

所以該程序有2個(gè)線程。

然后你要明白sleep方法是什么意思,老辦法,查API文檔(我推薦大家堅(jiān)持看英文文檔,英語(yǔ)對(duì)程序員至關(guān)重要):

Causes the currently executing thread to sleep (cease execution)for the specified number of milliseconds plus the specified number of nanoseconds, subject to the precision and accuracy of system timers and schedulers. The thread does not lose ownership of any?monitors.”

“Causes the currently executing thread to sleep...”使當(dāng)前正在執(zhí)行的線程sleep。我猜想你程序中thread.sleep()是想讓thread線程sleep吧?其實(shí)是不可以的,編譯會(huì)自動(dòng)處理成Thread.sleep。而為什么又可以改成WrongWayStopThread.sleep呢?因?yàn)閃rongWayStopThread繼承自Thread呀,static方法可以被繼承(無(wú)法被重寫(xiě)),classname.method哪里不對(duì)呢?

同時(shí),對(duì)這個(gè)問(wèn)題理解了也就理解為什么run方法里不能用Thread.sleep(1000)了。老師也講了doc中的內(nèi)容,我就不貼了,意思就是:

與sleep()? wait()? jion()相關(guān)的方法會(huì)clear掉interrupt status,導(dǎo)致while (!this.isInterrupted())的判斷出現(xiàn)并不穩(wěn)定性()。是不是很官方O__O "…(都這尿性,但嚴(yán)謹(jǐn)?shù)恼f(shuō)確實(shí)是這樣,習(xí)慣就好),說(shuō)簡(jiǎn)單但不嚴(yán)謹(jǐn)點(diǎn)了就是你調(diào)用這些方法就會(huì)重置interrupt status,所以這里while中使用Thread.sleep(1000)就會(huì)讓while的判斷條件的返回值一直為true。(注意這里返回的native boolean isInterrupted不是上文中的interrupt status,interrupt status是由系統(tǒng)底層決定的,所以上面用clear

還有我認(rèn)為如果main中的thread.interrupt()(此方法會(huì)直接將native boolean isInterrupted標(biāo)記為true)剛好在run中的Thread.sleep(1000)之前,while (!this.isInterrupted())之后執(zhí)行的話,程序會(huì)出現(xiàn)bug——正常執(zhí)行(-__-)b。

以上純屬瞎掰

另外昨晚看到一篇關(guān)于程序員學(xué)習(xí)英語(yǔ)的文章覺(jué)得很棒,這里貼過(guò)來(lái):

http://blog.jobbole.com/45296

還有嚴(yán)重批評(píng)1樓不負(fù)責(zé)任的回答。(╬▔皿▔)╬

加油小伙伴們。?

8 回復(fù) 有任何疑惑可以回復(fù)我~
#1

小羊愛(ài)主 提問(wèn)者

謝謝老饕的耐心解釋?zhuān)m然還沒(méi)完全掰明白,哈哈~~),但是還是要感謝, 是的,英語(yǔ)很重要,我們都努力!加油!
2015-08-30 回復(fù) 有任何疑惑可以回復(fù)我~

Java代碼中存在著大小寫(xiě)之分,感覺(jué)應(yīng)該不是等同的

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

小羊愛(ài)主 提問(wèn)者

嗯,謝謝您的回復(fù)
2015-08-05 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

請(qǐng)問(wèn),在這個(gè)例子中,為什么不能用 thread.sleep(1000),而只能用 Thread.sleep(1000)

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)