欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

為何找不到Java 7中的警告

 更新時(shí)間:2019年11月24日 11:05:40   投稿:laozhang  
在本篇文章和里小編給大家整理的是關(guān)于Java 7中的警告的相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們可以參考下。

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

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

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

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

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

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

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

小結(jié)

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

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

如果你想看到更多關(guān)于TWR實(shí)戰(zhàn)的例子,或者想要了解最新、高性能的I/O類,可以參考腳本之家其他相關(guān)文章。 

相關(guān)文章

  • Java線程使用同步鎖交替執(zhí)行打印奇數(shù)偶數(shù)的方法

    Java線程使用同步鎖交替執(zhí)行打印奇數(shù)偶數(shù)的方法

    這篇文章主要介紹了Java線程使用同步鎖交替執(zhí)行打印奇數(shù)偶數(shù)的方法。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-01-01
  • Java對(duì)象傳遞與返回的細(xì)節(jié)問題詳析

    Java對(duì)象傳遞與返回的細(xì)節(jié)問題詳析

    我們知道這是一個(gè)核心概念,在Java中總是按值傳遞而不是按引用傳遞,下面這篇文章主要給大家介紹了關(guān)于Java對(duì)象傳遞與返回的細(xì)節(jié)問題的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • Spring @Bean vs @Service注解區(qū)別

    Spring @Bean vs @Service注解區(qū)別

    本篇文章主要介紹了Spring @Bean vs @Service注解區(qū)別,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-12-12
  • Java中JFinal框架動(dòng)態(tài)切換數(shù)據(jù)庫的方法

    Java中JFinal框架動(dòng)態(tài)切換數(shù)據(jù)庫的方法

    這篇文章主要介紹了Java中JFinal框架動(dòng)態(tài)切換數(shù)據(jù)庫的方法,本文通過兩種方法結(jié)合示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • java實(shí)現(xiàn)屏蔽詞功能

    java實(shí)現(xiàn)屏蔽詞功能

    這篇文章主要介紹了java實(shí)現(xiàn)屏蔽詞功能,類似貼吧里面屏蔽各種用戶的發(fā)帖內(nèi)容,感興趣的小伙伴們可以參考一下
    2015-12-12
  • mybatis插件pageHelper實(shí)現(xiàn)分頁效果

    mybatis插件pageHelper實(shí)現(xiàn)分頁效果

    這篇文章主要為大家詳細(xì)介紹了mybatis插件pageHelper實(shí)現(xiàn)分頁效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • 最新版?IDEA?2022.1?正式上線新功能一覽

    最新版?IDEA?2022.1?正式上線新功能一覽

    4月12日,最新版的IDEA?2022.1正式發(fā)布,無論是從UI上,還是功能上,都有了很大的改進(jìn),完善,一起來看一下都有那些重要的更新
    2022-04-04
  • 全方位解析key值不確定的json數(shù)據(jù)

    全方位解析key值不確定的json數(shù)據(jù)

    這篇文章主要介紹了全方位解析key值不確定的json數(shù)據(jù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • 解決Spring在Thread中注入Bean無效的問題

    解決Spring在Thread中注入Bean無效的問題

    這篇文章主要介紹了解決Spring在Thread中注入Bean無效的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Java創(chuàng)建對(duì)象的四種方式詳解

    Java創(chuàng)建對(duì)象的四種方式詳解

    這篇文章主要介紹了Java創(chuàng)建對(duì)象的四種方式詳解,如果我們不想利用默認(rèn)構(gòu)造器來創(chuàng)建java對(duì)象,而想利用指定的構(gòu)造器來創(chuàng)建java對(duì)象,則需要利用Construtor對(duì)象,每個(gè)Construtor對(duì)應(yīng)一個(gè)構(gòu)造器,需要的朋友可以參考下
    2023-11-11

最新評(píng)論