為何找不到Java7中的警告

Java 7的這個(gè)新特性改變了警告的對(duì)象。構(gòu)建這些類(lèi)型畢竟有破壞類(lèi)型安全的風(fēng)險(xiǎn),這總得有人知道。但 API 的用戶(hù)對(duì)此是無(wú)能為力的,不管doSomething()是不是干了壞事,破壞了類(lèi)型安全,都不在API用戶(hù)的控制范圍之內(nèi)。

十堰鄖陽(yáng)ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)的ssl證書(shū)銷(xiāo)售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書(shū)合作)期待與您的合作!

真正需要看到這個(gè)警告信息的是寫(xiě)doSomething()的人,即API的創(chuàng)建者,而不是使用者。所以Java 7把警告信息從使用API的地方挪到了定義API的地方。

過(guò)去是在編譯使用API的代碼時(shí)觸發(fā)警告,而現(xiàn)在是在編譯這種可能會(huì)破壞類(lèi)型安全的API時(shí)觸發(fā)。編譯器會(huì)警告創(chuàng)建這種API的程序員,讓他注意類(lèi)型系統(tǒng)的安全。

為了減輕API開(kāi)發(fā)人員的負(fù)擔(dān),Java 7還提供了一個(gè)新注解java.lang.SafeVarargs。把這個(gè)注解應(yīng)用到API方法或構(gòu)造方法之中,則會(huì)產(chǎn)生類(lèi)型警告。通過(guò)用@SafeVarargs對(duì)這種方法進(jìn)行注解,開(kāi)發(fā)人員就不會(huì)在里面進(jìn)行任何危險(xiǎn)的操作,在這種情況下,編譯器就不會(huì)再發(fā)出警告了。

類(lèi)型系統(tǒng)的修改

雖然把警告信息從一個(gè)地方挪到另一個(gè)地方不是改變游戲規(guī)則的語(yǔ)言特性,但也證明了我們之前提到的觀點(diǎn)——Coin項(xiàng)目曾奉勸諸位貢獻(xiàn)者遠(yuǎn)離類(lèi)型系統(tǒng),因?yàn)榘堰@么一個(gè)小變化講清楚要大費(fèi)周章。這個(gè)例子表明搞清楚類(lèi)型系統(tǒng)不同特性之間如何交互是多么費(fèi)心費(fèi)力,而且對(duì)語(yǔ)言的修改被實(shí)現(xiàn)后又會(huì)怎么影響這種交互。這還不是特別復(fù)雜的修改,更大的變動(dòng)所涉及的內(nèi)容還會(huì)更多,其中還包括大量微妙的分支。

最后這個(gè)例子闡明了由小變化引發(fā)的錯(cuò)綜復(fù)雜的影響。我們對(duì)Coin項(xiàng)目中改進(jìn)的討論也結(jié)束了。盡管它們幾乎全都是語(yǔ)法上的小變化,但跟實(shí)現(xiàn)它們的代碼量相比,它們所帶來(lái)的正面影響還是很可觀的。一旦開(kāi)始使用,你就會(huì)發(fā)現(xiàn)這些特性對(duì)程序真的很有幫助!

小結(jié)

修改語(yǔ)言非常困難。而用類(lèi)庫(kù)實(shí)現(xiàn)新特性總是相對(duì)容易一些,當(dāng)然并不是所有特性都能用類(lèi)庫(kù)實(shí)現(xiàn)。面對(duì)挑戰(zhàn)時(shí),語(yǔ)言設(shè)計(jì)師可能會(huì)做出一些比他們的預(yù)想更輕微、更保守的調(diào)整。

現(xiàn)在,我們?cè)撊タ纯礃?gòu)成發(fā)布版本更重要的東西了,先從Java 7中某些核心類(lèi)庫(kù)的變化開(kāi)始。我們的下一站是I/O類(lèi)庫(kù),那里可以說(shuō)是發(fā)生了天翻地覆的變化。在此之前,希望你已經(jīng)掌握了Java之前的版本處理I/O的方法,因?yàn)镴ava 7中的這些類(lèi)(有時(shí)候被稱(chēng)為NIO.2)是構(gòu)建在之前框架基礎(chǔ)之上的。

如果你想看到更多關(guān)于TWR實(shí)戰(zhàn)的例子,或者想要了解最新、高性能的I/O類(lèi),可以參考創(chuàng)新互聯(lián)其他相關(guān)文章。 

文章題目:為何找不到Java7中的警告
新聞來(lái)源:http://muchs.cn/article42/geopec.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站靜態(tài)網(wǎng)站、ChatGPT、移動(dòng)網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開(kāi)發(fā)