<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    John Jiang

    a cup of Java, cheers!
    https://github.com/johnshajiang/blog

       :: 首頁 ::  :: 聯系 :: 聚合  :: 管理 ::
      131 隨筆 :: 1 文章 :: 530 評論 :: 0 Trackbacks
    Java SE 7發布:2006年12月以來的首個主版本升級
    在經過漫長地等待之后,Java SE 7終于發布了。Info的這篇文章總結了JDK 7的關鍵新特性,希望對大家了解JDK有幫助。(2011.07.30最后更新)

        從今天開始就可以使用Java 7了,這是Oracle收購Sun之后Java平臺發布的第一個版本。該版本包含一系列很小但很受歡迎的語言變化,含有一個新的文件API及Fork/Join框架,改進了JVM對動態語言的支持。
        Java 7的語言級變化已成為Coin項目(JSR 334)的一部分,該項目是JSR 201的后繼者,它被設計成使用一組能改善生產率的細小變化來提升Java語言。特別值得注意地是對"try-with-resources"的介紹。這是對C#的using語句的模仿,但是基于try語句的形式。結果,using語句只能處理單一資源,而try-with-resources能夠在給定語句塊的范圍內處理多個資源。
        有兩個針對異常處理的變化。第一,多個異常類型能夠由單個try語句塊處理。擴展了try語句中catch子句的語法,使它能處理一系列的異常類型,這些異常類型由"OR"操作符"|"分隔開,這將用于異常參數的聲明處。第二,如果一個異常參數未被修改,且未在cactch語句塊中被重新拋出,就不必把該異常加到方法簽名中。
    其它的語言級變化還包括:
    1. String類型可用于switch語句
    2. 支持二進制常量,且能在數字中使用下劃線進行分隔,例如,long creditCardNumber = 1234_5678_9012_3456L
    3. 簡化的可變長參數方法的調用:當包含可變長參數的方法使用了不確定的數組類型時,編譯器會報出警告。現在將該警告從方法調用處移到了方法聲明處。
    4. 改進了泛型實例創建時的類型推導(< >,即鉆石符):在創建類實例時使用受限制的類型推導,以便顯式地為構造器聲明參數類型,但從上下文可以確定這些類型,那么可用一個空的類型參數設置去替代這一聲明。所以,為了替代如下寫法:
    Map<String, List<String>> anagrams = new HashMap<String, List<String>>();
    可以寫成:
    Map<String, List<String>> anagrams = new HashMap<>();

        已經介紹過兩個主要的新API。第一個是JSR 203,這個API的加入是為了文件系統的訪問,可伸縮的異步I/O操作,Socket-Channel綁定與配置,以及多播數據報。特別能引起企業級開發者興趣的是真實的異步I/O API。對于那些會跨許多連接且要求低延時、高吞吐的高級服務器端應用,該API顯得尤為重要。作為加入Java的最后一個文件系統API,JSR 203還支持某些操作系統的特殊功能。例如,你可以為那些支持符合鏈接的系統創建這種鏈接。因此,JSR 203有些爭議,它并不嚴格遵循"編寫一次,隨處運行"這一原則,盡管它提供了一組能運行在所有平臺上的通用API,但它也提供了某些平臺的某些特定功能。
        第二個新API就是Fork/Join框架(它是JSR 166的一部分),原計劃是放到Java 5中的。它為開發者提供了一種將問題分解成任務的機制。這些任務可在任意數量的多核處理器中并發執行。
        在其它方面,平臺尋求新的網絡與安全特性,并擴展了對國際化的支持,包括對Unicde 6.0的支持。
        最后,Java SE 7還引入自Java起始以來最新的字節碼結構,InvokeDynamic關鍵字。InvokeDynamic加入了多于一個的調用模式,以及多于一個的鏈接模式,這樣就能基于用戶定義的規范進行編程。它的本意是在缺少靜態類型信息時能高效且靈活地執行方法調用,這就使得運行在JVM上的動態語言,如JRuby和Jython,的性能得到實質性地提升。
        在歡迎這些特性的同時,從許多方面看來,對于該版本最重要的事情,是它真的終于發出來了。在Sun和Apache軟件基金會之間長期存在的分歧,可能還有Sun在它最后的日子中的領導力與資源分配方面的問題,導致了這次版本間不同尋常的長期斷層。就如Mark Reinhold在最近的一次訪談中所評論的:   
    由于商業與政治方面的原因,Java在一段時間內進行了冬眠模式。但我們又回來了,并且將要發布版本7。它不是一個革命性的版本,只是一個改進的版本,但它里面確實有一些好東西。
        開發者們對JDK 7版入門的興趣,就會撬動對NetBeans 7.0IntelliJ IEDA 10.5的應用,它們都支持Java SE 7平臺的最新特性。Eclipse Indigobeta版也已支持Java 7,Oracle的JDeveloper計劃在今年晚些時候發布一個版本去支持JDK 7。
    posted on 2011-07-30 22:23 John Jiang 閱讀(2004) 評論(1)  編輯  收藏 所屬分類: JavaSEJava翻譯

    評論

    # re: Java SE 7發布:2006年12月以來的首個主版本升級(譯) 2011-08-03 21:02 Sha Jiang
    2011.07.31,InfoQ China也發布了"Java SE 7 Released: First Major Update Since December 2006"的中文版(比我的譯文晚了約一天*_*)。從譯文的內容來看,和我翻譯的差不多。我覺得不太好翻譯的地方,Info China也翻譯地差強人意;-)  回復  更多評論
      

    主站蜘蛛池模板: 久久久久久精品成人免费图片| 波多野结衣在线免费观看| 成年女人午夜毛片免费视频| 亚洲天堂中文字幕| 99久久人妻精品免费一区| 亚洲成a人片在线观看无码| 国产精品成人啪精品视频免费| 亚洲?V乱码久久精品蜜桃| 国产区图片区小说区亚洲区| www.亚洲色图.com| fc2成年免费共享视频网站| 在线日韩日本国产亚洲| 中国人免费观看高清在线观看二区| 亚洲综合精品香蕉久久网| 好久久免费视频高清| 亚洲avav天堂av在线不卡| 精品成在人线AV无码免费看| 亚洲国产成人久久三区| 日韩吃奶摸下AA片免费观看| 亚洲AV香蕉一区区二区三区| 亚洲Av无码乱码在线znlu| 中文字幕永久免费视频| 亚洲国产一区二区三区青草影视| 永久黄色免费网站| 亚洲暴爽av人人爽日日碰| 免费国产不卡午夜福在线| 久久久WWW免费人成精品| 久久亚洲精品中文字幕无码| 国产在线观看麻豆91精品免费| 亚洲 欧洲 自拍 另类 校园| 日韩精品亚洲专区在线观看| 桃子视频在线观看高清免费视频| 亚洲av专区无码观看精品天堂| 中文字幕免费在线播放| 中文字幕亚洲免费无线观看日本| 一二三四免费观看在线电影| 曰批全过程免费视频免费看| 1000部国产成人免费视频| 男人的天堂av亚洲一区2区| 日本亚洲欧洲免费天堂午夜看片女人员 | 国产精品亚洲成在人线|