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

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

你什么時候使用Java的@Override注釋?為什么?

你什么時候使用Java的@Override注釋?為什么?

你什么時候使用Java的@Override注釋?為什么?使用Java @Override注釋的最佳實(shí)踐是什么?為什么?使用@Override注釋標(biāo)記每個重寫方法似乎有點(diǎn)過分。是否有某些編程情況需要使用@Override和其他不應(yīng)該使用的@Override?
查看完整描述

4 回答

?
拉莫斯之舞

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超10個贊

每次覆蓋一個方法時使用它有兩個好處。這樣做是為了讓您可以利用編譯器檢查來確保在您認(rèn)為自己真正重寫方法時。這樣,如果您犯了一個錯誤拼寫方法名稱或者沒有正確匹配參數(shù)的常見錯誤,您將收到警告,您的方法實(shí)際上并沒有像您認(rèn)為的那樣覆蓋。其次,它使您的代碼更容易理解,因?yàn)楫?dāng)覆蓋方法時更加明顯。

此外,在Java 1.6中,您可以使用它來標(biāo)記方法何時實(shí)現(xiàn)具有相同優(yōu)點(diǎn)的接口。我認(rèn)為最好有一個單獨(dú)的注釋(比如@Implements),但它總比沒有好。


查看完整回答
反對 回復(fù) 2019-05-27
?
嚕嚕噠

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超7個贊

我認(rèn)為它最有用的是編譯時提醒,方法的意圖是覆蓋父方法。舉個例子:

protected boolean displaySensitiveInformation() {
  return false;}

您經(jīng)常會看到類似于上述方法的內(nèi)容,它會覆蓋基類中的方法。這是此類的重要實(shí)現(xiàn)細(xì)節(jié) - 我們不希望顯示敏感信息。

假設(shè)此方法在父類中更改為

protected boolean displaySensitiveInformation(Context context) {
  return true;}

此更改不會導(dǎo)致任何編譯時錯誤或警告 - 但它會完全更改子類的預(yù)期行為。

要回答您的問題:如果缺少超類中具有相同簽名的方法指示錯誤,則應(yīng)使用@Override注釋。


查看完整回答
反對 回復(fù) 2019-05-27
?
慕哥9229398

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超6個贊

這里有很多好的答案,所以讓我提供另一種方式來看待它......

編碼時沒有矯枉過正。鍵入@override不會花費(fèi)任何費(fèi)用,但如果拼寫錯誤的方法名稱或簽名稍有錯誤,可能會節(jié)省大量成本。

這樣考慮一下:當(dāng)你在這里導(dǎo)航并輸入這篇文章的時候,你幾乎花了更多的時間,而不是在你的余生中用@foreride打字; 但它阻止的一個錯誤可以節(jié)省你的時間。

Java盡其所能確保您在編輯/編譯時沒有犯任何錯誤,這是一種幾乎免費(fèi)的方法來解決在全面測試之外無法以任何其他方式阻止的整類錯誤。

你能想出一個更好的Java機(jī)制來確保當(dāng)用戶想要覆蓋一個方法時,他確實(shí)做到了嗎?

另一個簡潔的效果是,如果你不提供注釋,它將在編譯時警告你,你不小心覆蓋了父方法 - 如果你不打算這樣做,這可能是重要的。


查看完整回答
反對 回復(fù) 2019-05-27
?
楊__羊羊

TA貢獻(xiàn)1943條經(jīng)驗(yàn) 獲得超7個贊

我總是使用標(biāo)簽。這是一個簡單的編譯時標(biāo)志,可以捕獲我可能犯的小錯誤。

它會捕捉到的東西tostring()而不是toString()

小事情有助于大型項(xiàng)目。


查看完整回答
反對 回復(fù) 2019-05-27
  • 4 回答
  • 0 關(guān)注
  • 1708 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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