深入理解Java7

出版時(shí)間:2012-5  出版社:機(jī)械工業(yè)出版社  作者:成富  頁數(shù):467  
Tag標(biāo)簽:無  

前言

  前言:  為什么要寫這本書  我最早開始接觸Java語言是在大學(xué)的時(shí)候。當(dāng)時(shí)除了用Java開發(fā)一些小程序之外,就是用Struts框架開發(fā)Web應(yīng)用。在后來的實(shí)習(xí)和工作中,我對(duì)Java的使用和理解更加深入,逐漸涉及Java相關(guān)的各種不同技術(shù)。使用Java語言的一個(gè)深刻體會(huì)是:Java語言雖然上手容易,但是要真正掌握并不容易?! ava語言對(duì)開發(fā)人員屏蔽了一些與底層實(shí)現(xiàn)相關(guān)的細(xì)節(jié),但是仍然有很多內(nèi)容對(duì)開發(fā)人員來說是很復(fù)雜的,這些內(nèi)容恰好是容易出現(xiàn)錯(cuò)誤的地方。我在工作中就經(jīng)常遇到與類加載器和垃圾回收相關(guān)的問題。在解決這些問題的過程中,我積累了一些經(jīng)驗(yàn),遇到類似的問題可以很快地找到問題的根源。同時(shí),在解決這些實(shí)際問題的過程中,我意識(shí)到雖然可以解決某些具體的問題,但是并沒有真正理解這些問題的解決辦法背后所蘊(yùn)含的基本原理,仍然還只是處于一個(gè)“知其然,不知其所以然”的狀態(tài)。于是我開始閱讀Java相關(guān)的基礎(chǔ)資料,包括Java語言規(guī)范、Java虛擬機(jī)規(guī)范、Java類庫的源代碼和其他在線資料等。在閱讀的基礎(chǔ)上,編寫小程序進(jìn)行測(cè)試和試驗(yàn)。通過閱讀和實(shí)踐,我對(duì)Java平臺(tái)中的一些基本概念有了更加深入的理解。從2010年開始,我對(duì)積累的相關(guān)知識(shí)進(jìn)行了整理,在InfoQ中文站的“Java深度歷險(xiǎn)”專欄上發(fā)表出來,受到了一定的關(guān)注?! ?011年7月,在時(shí)隔數(shù)年之后,Java的一個(gè)重大版本Java SE 7發(fā)布了。在這個(gè)新的版本中,Java平臺(tái)增加了很多新的特性。在Java虛擬機(jī)方面,invokedynamic指令的加入使虛擬機(jī)上的動(dòng)態(tài)語言的性能得到很大的提升。這使得開發(fā)人員可以享受到動(dòng)態(tài)語言帶來的在提高生產(chǎn)效率方面的好處。在Java語言方面,語言本身的進(jìn)一步簡(jiǎn)化,使開發(fā)人員編寫代碼的效率更高。在Java類庫方面,新的IO庫和同步實(shí)用工具類為開發(fā)人員提供了更多實(shí)用的功能。從另外一個(gè)角度來說,Java SE 7是Oracle公司收購Sun公司之后發(fā)布的第一個(gè)Java版本,從側(cè)面反映出了Oracle公司對(duì)Java社區(qū)的領(lǐng)導(dǎo)力,可以繼續(xù)推動(dòng)Java平臺(tái)向前發(fā)展。這可以打消企業(yè)和社區(qū)對(duì)于Oracle公司領(lǐng)導(dǎo)力的顧慮。Java SE 7的發(fā)布也證明了基于JCP和OpenJDK的社區(qū)驅(qū)動(dòng)模式可以很好地推動(dòng)Java向前發(fā)展?! ‰S著新版本的發(fā)布,肯定會(huì)有越來越多的開發(fā)人員想嘗試使用Java SE 7中的新特性,畢竟開發(fā)者社區(qū)對(duì)這個(gè)新版本期待了太長(zhǎng)的時(shí)間。在Java程序中使用這些新特性,可以提高代碼質(zhì)量,提升工作效率。Java平臺(tái)的每個(gè)版本都致力于提高Java程序的運(yùn)行性能。隨著新版本的發(fā)布,企業(yè)都應(yīng)該考慮把Java程序的運(yùn)行平臺(tái)升級(jí)到最新的Java SE 7,這樣可以享受到性能提升所帶來的好處。對(duì)于新的Java程序開發(fā),推薦使用Java SE 7作為標(biāo)準(zhǔn)的運(yùn)行平臺(tái)。本書將Java SE 7中的新特性介紹和對(duì)Java平臺(tái)的深入探討結(jié)合起來,讓讀者既可以了解最新版本的Java平臺(tái)的新特性,又可以對(duì)Java平臺(tái)的底層細(xì)節(jié)有更加深入的理解?! ∽x者對(duì)象及如何閱讀本書  本書面向的主要讀者是具備一定Java基礎(chǔ)的開發(fā)人員和在校學(xué)生。本書中不涉及Java的基本語法,因此不適合Java初學(xué)者閱讀。如果只對(duì)Java SE 7中的新特性感興趣,可以閱讀第1章到第6章;如果對(duì)Java中的特定主題感興趣,可以根據(jù)目錄有選擇地閱讀。另外,第1章到第6章雖然以Java SE 7的新特性介紹為主,但是其中也穿插了對(duì)相關(guān)內(nèi)容的深入探討?! ”緯煞譃槿蟛糠郑骸 〉谝徊糠譃镴ava SE 7新特性介紹,從第1章到第6章。這部分詳細(xì)地介紹了Java SE 7中新增的重要特性。在對(duì)新特性的介紹中,也包含了對(duì)Java平臺(tái)相關(guān)內(nèi)容的詳細(xì)介紹?! 〉诙糠譃镴ava SE 7的深入探討,從第7章到第13章。這部分著重講解了Java平臺(tái)上的底層實(shí)現(xiàn),并對(duì)一些重要的特性進(jìn)行了深入探討。這個(gè)部分所涉及的內(nèi)容包括Java虛擬機(jī)、Java源代碼和字節(jié)代碼操作、Java類加載器、對(duì)象生命周期、多線程與并發(fā)編程實(shí)踐、Java泛型和Java安全?! 〉谌糠譃镴ava SE 8的內(nèi)容展望,即第14章。這部分簡(jiǎn)要介紹了Java SE 8中將要增加的新特性?! ”緯€通過兩個(gè)附錄對(duì)OpenJDK(附錄A)和Java語言的歷史(附錄B)進(jìn)行了簡(jiǎn)要的介紹?! 】闭`和支持  由于作者的水平有限,編寫時(shí)間倉促,書中難免會(huì)出現(xiàn)一些錯(cuò)誤或者不準(zhǔn)確的地方,懇請(qǐng)讀者批評(píng)指正?! ≈轮x  感謝InfoQ中文站和InfoQ編輯張凱峰先生。這本書能夠面世,得益于我在InfoQ中文站的“Java深度歷險(xiǎn)”專欄上發(fā)表的文章。  感謝機(jī)械工業(yè)出版社華章公司的編輯楊福川和姜影的辛勤工作,使得這本書能夠最終順利完成?! 「兄x家人和朋友對(duì)我的支持與幫助!

內(nèi)容概要

  本書是學(xué)習(xí)Java
7新功能和新特性以及深入理解Java核心技術(shù)的最佳選擇之一。經(jīng)過近6年的等待,Java迎來了它的又一個(gè)歷史性的版本—Java
7。Java 7在提高開發(fā)人員的生產(chǎn)效率、平臺(tái)性能和模塊方向上又邁進(jìn)了一步,變得更加強(qiáng)大和靈活。本書不僅對(duì)Java
7的所有重要更新進(jìn)行了全面的解讀,而且還對(duì)Java平臺(tái)的核心技術(shù)的底層實(shí)現(xiàn)進(jìn)行了深入探討,包含大量最佳實(shí)踐。
全書的主要內(nèi)容可分為三大部分:第一部分是1~6章,全面闡釋Java
7在語法、JVM、類庫和API等方面的所有重要新功能和新特性,掌握這部分內(nèi)容有助于大幅度提升編碼效率和提高代碼質(zhì)量;第二部分是7~13章,對(duì)JVM、Java源代碼和字節(jié)代碼操作、類加載器、對(duì)象生命周期、多線程、并發(fā)編程、泛型、安全等Java平臺(tái)的核心技術(shù)進(jìn)行了深入解析,掌握這部分內(nèi)容有助于深入理解Java的底層原理;第三部分為第14章,是對(duì)Java
8的展望,簡(jiǎn)要介紹了Java 8中將要增加的新特性。

作者簡(jiǎn)介

  成富 資深Java軟件工程師,有多年Java企業(yè)級(jí)應(yīng)用開發(fā)經(jīng)驗(yàn),對(duì)Java
7和Java平臺(tái)的各項(xiàng)技術(shù)的底層原理有深入透徹的研究。曾就職于IBM中國(guó)研發(fā)中心,先后在IBM新技術(shù)學(xué)院和Lotus部門參與了多個(gè)重要產(chǎn)品的開發(fā)工作,現(xiàn)就職于新西蘭PropellerHead公司。他是非常受歡迎的技術(shù)作家,在IBM
developerWorks上發(fā)表中英文技術(shù)文章近30篇,獲得了其頒發(fā)的“極具人氣作者獎(jiǎng)”;他還是知名技術(shù)網(wǎng)站InfoQ的專欄作家,撰寫了“Java深度歷險(xiǎn)”專欄,共發(fā)表技術(shù)文章10余篇。此外,他還非常精通HTML
5、CSS 3、JavaScript等Web 2.0核心技術(shù),實(shí)戰(zhàn)經(jīng)驗(yàn)豐富。

書籍目錄

前言
Java的挑戰(zhàn)與展望
第1章 Java 7語法新特性
 1.1 Coin項(xiàng)目介紹
 1.2 在switch語句中使用字符串
 1.2.1 基本用法
 1.2.2 實(shí)現(xiàn)原理
 1.2.3 枚舉類型
 1.3 數(shù)值字面量的改進(jìn)
 1.3.1 二進(jìn)制整數(shù)字面量
 1.3.2 在數(shù)值字面量中使用下劃線
 1.4 優(yōu)化的異常處理
 1.4.1 異常的基礎(chǔ)知識(shí)
 1.4.2 創(chuàng)建自己的異常
 1.4.3 處理異常
 1.4.4 Java 7的異常處理新特性
 1.5 try-with-resources語句
 1.6 優(yōu)化變長(zhǎng)參數(shù)的方法調(diào)用
 1.7 小結(jié)
第2章 Java語言的動(dòng)態(tài)性
 2.1 腳本語言支持API
 2.1.1 腳本引擎
 2.1.2 語言綁定
 2.1.3 腳本執(zhí)行上下文
 2.1.4 腳本的編譯
 2.1.5 方法調(diào)用
 2.1.6 使用案例
 2.2 反射API
 2.2.1 獲取構(gòu)造方法
 2.2.2 獲取域
 2.2.3 獲取方法
 2.2.4 操作數(shù)組
 2.2.5 訪問權(quán)限與異常處理
 2.3 動(dòng)態(tài)代理
 2.3.1 基本使用方式
 2.3.2 使用案例
 2.4 動(dòng)態(tài)語言支持
 2.4.1 Java語言與Java虛擬機(jī)
 2.4.2 方法句柄
 2.4.3 invokedynamic指令
 2.5 小結(jié)
第3章 Java IO
 3.1 流
 3.1.1 基本輸入流
 3.1.2 基本輸出流
 3.1.3 輸入流的復(fù)用
 3.1.4 過濾輸入輸出流
 3.1.5 其他輸入輸出流
 3.1.6 字符流
 3.2 緩沖區(qū)
 3.2.1 基本用法
 3.2.2 字節(jié)緩沖區(qū)
 3.2.3 緩沖區(qū)視圖
 3.3 通道
 3.3.1 文件通道
 3.3.2 套接字通道
 3.4 NIO.2
 3.4.1 文件系統(tǒng)訪問
 3.4.2 zipjar文件系統(tǒng)
 3.4.3 異步IO通道
 3.4.4 套接字通道綁定與配置
 3.4.5 IP組播通道
 3.5 使用案例
 3.6 小結(jié)
第4章 國(guó)際化與本地化
 4.1 國(guó)際化概述
 4.2 Unicode
 4.2.1 Unicode編碼格式
 4.2.2 其他字符集
 4.2.3 Java與Unicode
 4.3 Java中的編碼實(shí)踐
 4.3.1 Java NIO中的編碼器和解碼器
 4.3.2 亂碼問題詳解
 4.4 區(qū)域設(shè)置
 4.4.1 IETF BCP 47
 4.4.2 資源包
 4.4.3 日期和時(shí)間
 4.4.4 數(shù)字和貨幣
 4.4.5 消息文本
 4.4.6 默認(rèn)區(qū)域設(shè)置的類別
 4.4.7 字符串比較
 4.5 國(guó)際化與本地化基本實(shí)踐
 4.6 小結(jié)
第5章 圖形用戶界面
 5.1 Java圖形用戶界面概述
 5.2 AWT
 5.2.1 重要組件類
 5.2.2 任意形狀的窗口
 5.2.3 半透明窗口
 5.2.4 組件混合
 5.3 Swing
 5.3.1 重要組件類
 5.3.2 JLayer組件和LayerUI類
 5.4 事件處理與線程安全性
 5.4.1 事件處理
 5.4.2 事件分發(fā)線程
 5.4.3 SwingWorker類
 5.4.4 SecondaryLoop接口
 5.5 界面繪制
 5.5.1 AWT中的界面繪制
 5.5.2 Swing中的繪制
 5.6 可插拔式外觀樣式
 5.7 JavaFX
 5.7.1 場(chǎng)景圖
 5.7.2 變換
 5.7.3 動(dòng)畫效果
 5.7.4 FXML
 5.7.5 CSS外觀描述
 5.7.6 Web引擎與網(wǎng)頁顯示
 5.8 使用案例
 5.9 小結(jié)
第6章 Java 7其他重要更新
 6.1 關(guān)系數(shù)據(jù)庫訪問
 6.1.1 使用try-with-resources語句
 6.1.2 數(shù)據(jù)庫查詢的默認(rèn)模式
 6.1.3 數(shù)據(jù)庫連接超時(shí)時(shí)間與終止
 6.1.4 語句自動(dòng)關(guān)閉
 6.1.5 RowSet實(shí)現(xiàn)提供者
 6.2 java.lang包的更新
 6.2.1 基本類型的包裝類
 6.2.2 進(jìn)程使用
 6.2.3 Thread類的更新
 6.3 Java實(shí)用工具類
 6.3.1 對(duì)象操作
 6.3.2 正則表達(dá)式
 6.3.3 壓縮文件處理
 6.4 JavaBeans組件
 6.4.1 獲取組件信息
 6.4.2 執(zhí)行語句和表達(dá)式
 6.4.3 持久化
 6.5 小結(jié)
第7章 Java虛擬機(jī)
 7.1 虛擬機(jī)基本概念
 7.2 內(nèi)存管理
 7.3 引用類型
 7.3.1 強(qiáng)引用
 7.3.2 引用類型基本概念
 7.3.3 軟引用
 7.3.4 弱引用
 7.3.5 幽靈引用
 7.3.6 引用隊(duì)列
 7.4 Java本地接口
 7.4.1 JNI基本用法
 7.4.2 Java程序中集成CC++代碼
 7.4.3 在CC++程序中啟動(dòng)Java虛擬機(jī)
 7.5 HotSpot虛擬機(jī)
 7.5.1 字節(jié)代碼執(zhí)行
 7.5.2 垃圾回收
 7.5.3 啟動(dòng)參數(shù)
 7.5.4 分析工具
 7.5.5 Java虛擬機(jī)工具接口
 7.6 小結(jié)
第8章 Java源代碼和字節(jié)代碼操作
 8.1 Java字節(jié)代碼格式
 8.1.1 基本格式
 8.1.2 常量池的結(jié)構(gòu)
 8.1.3 屬性
 8.2 動(dòng)態(tài)編譯Java源代碼
 8.2.1 使用javac工具
 8.2.2 Java編譯器API
 8.2.3 使用Eclipse JDT編譯器
 8.3 字節(jié)代碼增強(qiáng)
 8.3.1 使用ASM
 8.3.2 增強(qiáng)代理
 8.4 注解
 8.4.1 注解類型
 8.4.2 創(chuàng)建注解類型
 8.4.3 使用注解類型
 8.4.4 處理注解
 8.5 使用案例
 8.6 小結(jié)
第9章 Java類加載器
 9.1 類加載器概述
 9.2 類加載器的層次結(jié)構(gòu)與代理模式
 9.3 創(chuàng)建類加載器
 9.4 類加載器的隔離作用
 9.5 線程上下文類加載器
 9.6 Class.forName方法
 9.7 加載資源
 9.8 Web應(yīng)用中的類加載器
 9.9 OSGi中的類加載器
 9.9.1 OSGi基本的類加載器機(jī)制
 9.9.2 Equinox框架的類加載實(shí)現(xiàn)機(jī)制
 9.9.3 Equinox框架嵌入到Web容器中
 9.10 小結(jié)
第10章 對(duì)象生命周期
 10.1 Java類的鏈接
 10.2 Java類的初始化
 10.3 對(duì)象的創(chuàng)建與初始化
 10.4 對(duì)象終止
 10.5 對(duì)象復(fù)制
 10.6 對(duì)象序列化
 10.6.1 默認(rèn)的對(duì)象序列化
 10.6.2 自定義對(duì)象序列化
 10.6.3 對(duì)象替換
 10.6.4 版本更新
 10.6.5 安全性
 10.6.6 使用Externalizable接口
 10.7 小結(jié)
第11章 多線程與并發(fā)編程實(shí)踐
 11.1 多線程
 11.1.1 可見性
 11.1.2 Java內(nèi)存模型
 11.1.3 volatile關(guān)鍵詞
 11.1.4 final關(guān)鍵詞
 11.1.5 原子操作
 11.2 基本線程同步方式
 11.2.1 synchronized關(guān)鍵詞
 11.2.2 Object類的wait、notify和notifyAll方法
 11.3 使用Thread類
 11.3.1 線程狀態(tài)
 11.3.2 線程中斷
 11.3.3 線程等待、睡眠和讓步
 11.4 非阻塞方式
 11.5 高級(jí)實(shí)用工具
 11.5.1 高級(jí)同步機(jī)制
 11.5.2 底層同步器
 11.5.3 高級(jí)同步對(duì)象
 11.5.4 數(shù)據(jù)結(jié)構(gòu)
 11.5.5 任務(wù)執(zhí)行
 11.6 Java SE 7新特性
 11.6.1 輕量級(jí)任務(wù)執(zhí)行框架forkjoin
 11.6.2 多階段線程同步工具
 11.7 ThreadLocal類
 11.8 小結(jié)
第12章 Java泛型
 12.1 泛型基本概念
 12.2 類型擦除
 12.3 上界和下界
 12.4 通配符
 12.5 泛型與數(shù)組
 12.6 類型系統(tǒng)
 12.7 覆寫與重載
 12.7.1 覆寫對(duì)方法類型簽名的要求
 12.7.2 覆寫對(duì)返回值類型的要求
 12.7.3 覆寫對(duì)異常聲明的要求
 12.7.4 重載
 12.8 類型推斷和<>操作符
 12.9 泛型與反射API
 12.10 使用案例
 12.11 小結(jié)
第13章 Java安全
 13.1 Java安全概述
 13.2 用戶認(rèn)證
 13.2.1 主體、身份標(biāo)識(shí)與憑證
 13.2.2 登錄
 13.3 權(quán)限控制
 13.3.1 權(quán)限、策略與保護(hù)域
 13.3.2 訪問控制權(quán)限
 13.3.3 特權(quán)動(dòng)作
 13.3.4 訪問控制上下文
 13.3.5 守衛(wèi)對(duì)象
 113.4 加密與解密、報(bào)文摘要和數(shù)字簽名
 13.4.1 Java密碼框架
 13.4.2 加密與解密
 13.4.3 報(bào)文摘要
 13.4.4 數(shù)字簽名
 13.5 安全套接字連接
 13.5.1 SSL協(xié)議
 13.5.2 HTTPS
 13.6 使用案例
 13.7 小結(jié)
第14章 超越Java 7
 14.1 lambda表達(dá)式
 14.1.1 函數(shù)式接口
 14.1.2 lambda表達(dá)式的語法
 14.1.3 目標(biāo)類型
 14.1.4 詞法作用域
 14.1.5 方法引用
 14.1.6 接口的默認(rèn)方法
 14.2 Java平臺(tái)模塊化
 14.3 Java SE 8的其他更新
 14.4 小結(jié)
 附錄A OpenJDK
 附錄B Java簡(jiǎn)史 4483.4 加密與解密、報(bào)文摘要和數(shù)字簽名
 13.4.1 Java密碼框架
 13.4.2 加密與解密
 13.4.3 報(bào)文摘要
 13.4.4 數(shù)字簽名
 13.5 安全套接字連接
 13.5.1 SSL協(xié)議
 13.5.2 HTTPS
 13.6 使用案例
 13.7 小結(jié)
第14章 超越Java 7
 14.1 lambda表達(dá)式
 14.1.1 函數(shù)式接口
 14.1.2 lambda表達(dá)式的語法
 14.1.3 目標(biāo)類型
 14.1.4 詞法作用域
 14.1.5 方法引用
 14.1.6 接口的默認(rèn)方法
 14.2 Java平臺(tái)模塊化
 14.3 Java SE 8的其他更新
 14.4 小結(jié)
附錄A OpenJDK
附錄B Java簡(jiǎn)史
  

章節(jié)摘錄

版權(quán)頁:   1.1 Coin項(xiàng)目介紹 在介紹具體的新特性之前,有必要介紹一下Coin項(xiàng)目。OpenJDK中的Coin項(xiàng)目的目的是維護(hù)對(duì)Java語言所做的語法增強(qiáng)。在Coin項(xiàng)目開始之初,曾經(jīng)廣泛地向社區(qū)征求提議。在短短的一個(gè)月時(shí)間內(nèi)就收到了近70條提議。最后有9條提議被列入考慮之中。在這9條提議中,有6條成為Java 7的一部分,剩下的2條提議會(huì)在Java 8中重新考慮,還有1條提議被移到其他項(xiàng)目中實(shí)現(xiàn)。這6條被接納的提議除了本章會(huì)介紹的在switch語句中使用字符串、數(shù)值字面量的改進(jìn)、優(yōu)化的異常處理、try-with-resources語句和優(yōu)化變長(zhǎng)參數(shù)的方法調(diào)用之外,還包括第12章中會(huì)介紹的簡(jiǎn)化泛型類創(chuàng)建的""操作符。在Java 8中考慮的2條提議則分別是集合類字面量和為L(zhǎng)ist和Map提供類似數(shù)組的按序號(hào)的訪問方式。 和其他對(duì)Java平臺(tái)所做的修改一樣,Coin項(xiàng)目所建議的修改也需要通過JCP來完成。這些改動(dòng)以JSR 334(Small Enhancements to the JavaTM Programming Language)的形式提交到JCP。 1.2在SWitch語句中使用字符串 對(duì)于switch語句,開發(fā)人員應(yīng)該都不陌生。大部分編程語言中都有類似的語法結(jié)構(gòu),用來根據(jù)某個(gè)表達(dá)式的值選擇要執(zhí)行的語句塊。對(duì)于switch語句中的條件表達(dá)式類型,不同編程語言所提供的支持是不一樣的。對(duì)于Java語言來說,在Java 7之前,switch語句中的條件表達(dá)式的類型只能是與整數(shù)類型兼容的類型,包括基本類型char、byte、short和int,與這些基本類型對(duì)應(yīng)的封裝類Character、Byte、Short和Integer,還有枚舉類型。這樣的限制降低了語言的靈活性,使開發(fā)人員在需要根據(jù)其他類型的表達(dá)式來進(jìn)行條件選擇時(shí),不得不增加額外的代碼來繞過這個(gè)限制。為此,Java 7放寬了這個(gè)限制,額外增加了一種可以在switch語句中使用的表達(dá)式類型,那就是很常見的字符串,即String類型。 1.2.1 基本用法 在基于Java 7的代碼中使用這個(gè)新特性非常簡(jiǎn)單,因?yàn)檫@個(gè)新特性并沒有改變switch的語法含義,只是多了一種開發(fā)人員可以選擇的條件判斷的數(shù)據(jù)類型。但是這個(gè)簡(jiǎn)單的新特性卻帶來了重大的影響,因?yàn)楦鶕?jù)字符串進(jìn)行條件判斷在開發(fā)中是很常見的。 考慮這樣一個(gè)應(yīng)用情景,在程序中需要根據(jù)用戶的性別來生成合適的稱謂,比如男性就使用"×××先生",女性就使用"×××女士"。判斷條件的類型可以是字符串,如"男"表示男性,"女"表示女性。不過這在Java 7之前的switch語句中是行不通的,之前只能添加額外的代碼先將字符串轉(zhuǎn)換成整數(shù)類型。

媒體關(guān)注與評(píng)論

備受推崇: Java 7六年磨一劍,它在前一個(gè)版本上發(fā)生了很大的變化,引入了非常多激動(dòng)人心的新特性和新功能,在語法、Java虛擬機(jī)、I/O、安全性、并發(fā)和國(guó)際化等方面都有重要的更新。作為國(guó)內(nèi)第一本Java 7方面的專著,本書全面介紹了這些重要的更新,對(duì)有一定開發(fā)經(jīng)驗(yàn)的Java程序員來說非常寶貴,能極大地降低他們的學(xué)習(xí)成本。此外,本書還探討了各項(xiàng)Java技術(shù)的底層原理,對(duì)于想深入學(xué)習(xí)Java的讀者尤為有價(jià)值。強(qiáng)烈推薦!  ——51CTO(www.51cto.com) 中國(guó)領(lǐng)先的IT技術(shù)網(wǎng)站  長(zhǎng)期以來,Java一直雄踞TIOBE編程語言排行榜的首位,它擁有人數(shù)最龐大的開發(fā)者社區(qū)。Java的每一次版本更新都會(huì)對(duì)語言、虛擬機(jī)和API類庫等進(jìn)行重要更新,Java 7這個(gè)版本尤為明顯。Java 7的一個(gè)顯著改變就是它提供的新特性能讓開發(fā)者通過簡(jiǎn)化代碼來提升開發(fā)效率和編碼質(zhì)量。本書以“深入理解”為宗旨,對(duì)Java 7中新增的內(nèi)容和之前版本中已經(jīng)非常成熟的核心技術(shù)都進(jìn)行了非常深入的討論,是系統(tǒng)學(xué)習(xí)Java 7和Java技術(shù)進(jìn)階的必備參考書。書中還給出了非常多的代碼示例,可以幫助讀者更好地在實(shí)際中應(yīng)用這些知識(shí)。  ——秦小波 資深Java技術(shù)專家  著有暢銷書《設(shè)計(jì)模式之禪》和《編寫高質(zhì)量代碼:改善Java程序的151個(gè)建議》  學(xué)習(xí)一門技術(shù),要想做到“知其然”并不難,難的是要“知其所以然”,而且這更重要,也是考查一個(gè)技術(shù)人員真實(shí)實(shí)力的標(biāo)桿。想跨越這個(gè)標(biāo)桿,除了自己付出時(shí)間和精力之外,高人的點(diǎn)撥和指導(dǎo)更能起到事半功倍之效。成富是InfoQ中文站的資深專欄作者,從讀者對(duì)他的“Java深度歷險(xiǎn)”系列技術(shù)文章的反饋可以看出:他不僅能幫你“知其然”,而且還能通過深入淺出的講解讓你“知其所以然”。他的這本書一定能讓你的Java技能更上一層樓。 ——鄭柯 InfoQ中文站總編輯

編輯推薦

《深入理解Java 7:核心技術(shù)與最佳實(shí)踐》是學(xué)習(xí)Java 7新功能和新特性以及深入理解Java核心技術(shù)的最佳選擇之一。

名人推薦

Java 7六年磨一劍,它在前—個(gè)版本上發(fā)生了很大的變化,引入了非常多激動(dòng)人心的新特性和新功能,在語法、Java虛擬機(jī)、I/O、安全性、并發(fā)和國(guó)際化等方面都有重要的更新。作為國(guó)內(nèi)第一本Java 7方面的專著,本書全面介紹了這些重要的更新,對(duì)有一定開發(fā)經(jīng)驗(yàn)的Java程序員來說非常寶貴,能極大地降低他們的學(xué)習(xí)成本。此外,本書還探討了各項(xiàng)Java技術(shù)的底層原理,對(duì)于想深入學(xué)習(xí)Java的讀者尤為有價(jià)值。強(qiáng)烈推薦! ——51CTO(www.51cto.com)中國(guó)領(lǐng)先的IT技術(shù)網(wǎng)站 長(zhǎng)期以來,Java一直雄踞TIOBE編程語言排行榜的首位,它擁有人數(shù)最龐大的開發(fā)者社區(qū)。Java的每一次版本更新都會(huì)對(duì)語言、虛擬機(jī)和API類庫等進(jìn)行重要更新,Java 7這個(gè)版本尤為明顯。Java 7的—個(gè)顯著改變就是它提供的新特性能讓開發(fā)者通過簡(jiǎn)化代碼來提升開發(fā)效率和編碼質(zhì)量。本書以"深入理解"為宗旨,對(duì)Java 7中新增的內(nèi)容和之前版本中已經(jīng)非常成熟的核心技術(shù)都進(jìn)行了非常深入的討論,是系統(tǒng)學(xué)習(xí)Java 7和Java技術(shù)進(jìn)階的必備參考書。書中還給出了非常多的代碼示例,可以幫助讀者更好地在實(shí)際中應(yīng)用這些知識(shí)。 ——秦小波 資深Java技術(shù)專家著有暢銷書《設(shè)計(jì)模式之禪》和《編寫高質(zhì)量代碼:改善Java程序的151個(gè)建議》 學(xué)習(xí)一門技術(shù),要想做到"知其然"并不難,難的是要"知其所以然",而且這更重要,也是考查一個(gè)技術(shù)人員真實(shí)實(shí)力的標(biāo)桿。想跨越這個(gè)標(biāo)桿,除了自己付出時(shí)間和精力之外,高人的點(diǎn)撥和指導(dǎo)更能起到事半功倍之效。成富是InfoQ中文站的資深專欄作者,從讀者對(duì)他的"Java深度歷險(xiǎn)"系列技術(shù)文章的反饋可以看出:他不僅能幫你"知其然",而且還能通過深入淺出的講解讓你"知其所以然"。他的這本書一定能讓你的Java技能更上一層樓。 ——鄭柯InfoQ中文站總編輯

圖書封面

圖書標(biāo)簽Tags

評(píng)論、評(píng)分、閱讀與下載


    深入理解Java7 PDF格式下載


用戶評(píng)論 (總計(jì)66條)

 
 

  •   深入理解Java7:核心技術(shù)與最佳實(shí)踐
    很是不錯(cuò)的java7的書籍。。。。
  •   之前曾看過作者在InfoQ上的“Java深度歷險(xiǎn)”專欄,文章都很不錯(cuò),收獲不少。
    新書出來以后就果斷下單了,專欄中的部分內(nèi)容也收到了書中,不過更多的內(nèi)容是之前沒有看過的。我比較感興趣的內(nèi)容是關(guān)于Java7的部分,拿到書看了第1章的內(nèi)容,對(duì)Coin、數(shù)值字面量的改進(jìn)、優(yōu)化的異常處理等內(nèi)容寫得很到位,分析得比較深入,后面的內(nèi)容還沒有仔細(xì)看,希望也會(huì)不錯(cuò)吧。
  •   原本只是抱著看小說的心理買的這本書。根據(jù)以往的經(jīng)驗(yàn),一般說Java6新特性之類的,最后大都抄襲文檔。但是這本書不同??吹某鲎髡哂幸欢ǖ慕?jīng)驗(yàn)和水平,并且能夠很好的結(jié)合自身的經(jīng)驗(yàn)和對(duì)新特性的理解很好的融入在文字中。并且語言嚴(yán)謹(jǐn),值得廣大讀者學(xué)習(xí)。
  •   這本書不錯(cuò),很值得有java基礎(chǔ)的人去研究,更深層次的去理解java,里面介紹了一些關(guān)于jdk7的一些特性,想學(xué)好java的人更值得去研究
  •   想深入了解和研究java,此書是很好的選擇。適合進(jìn)階學(xué)習(xí)
  •   Java 7對(duì)比以前的版本,改動(dòng)比較大
    希望能找本書學(xué)習(xí)一下,當(dāng)當(dāng),不要讓我失望哦
  •   講解的很深很細(xì),能讓自己對(duì)Java7 有一個(gè)比較好的理解,這本書可以看看 啊
  •   Java 7版本的變化比較大,正需要這方面的資料
    拿到書粗略翻了一下,不錯(cuò)
  •   熟悉JAVA7,是很好的選擇.
  •   java 我要好好的研究你。
  •   java7的學(xué)習(xí)必備書籍,相當(dāng)?shù)牟诲e(cuò)
  •   了解Java7的必備和首選的一本書,非常好!
  •   java程序員必看,不管你是多么高深的階段。
  •   很好的JAVA7書籍!
  •   目前Java 7的書貌似就這一本
    現(xiàn)在還在預(yù)售,希望能盡快發(fā)貨
  •   給老公買的,他覺得不錯(cuò),我是看不懂,質(zhì)量不錯(cuò),應(yīng)該是正版
  •   到貨非???,書本質(zhì)量好
  •   對(duì)于想了解JDK的人還是很有幫助的
  •   這本書很經(jīng)典,值得一看
  •   雖然有些王婆賣瓜的嫌疑,不過這本書也傾注了我很多的心血。這次是在當(dāng)當(dāng)網(wǎng)上買了送給朋友的。
  •   印刷好,內(nèi)容更好
  •   不錯(cuò)不錯(cuò),但是現(xiàn)在用的最多的還是1.6
  •   not too deep for senior
  •   看完挺深刻的
  •   寫的很好。很是喜歡
  •   還沒來的及結(jié)細(xì)看,基本是不錯(cuò)
  •   需要 了解一下
  •   不錯(cuò),不過翻譯有一點(diǎn)點(diǎn)怪,不過不影響。是本好書
  •   本書對(duì)最新的java 7作了深入的解析,看完后受益匪淺.
  •   好書 每個(gè)java開發(fā)人員必備的
  •   java我最喜歡的東西,所以我要從新學(xué)習(xí),雖然已經(jīng)2年沒有用過了,但是好多思想都源自java,既然已經(jīng)java7了,那就從新技術(shù)學(xué)起
  •   國(guó)人寫的,翻了翻,感覺是一本很不錯(cuò)的Java書
    對(duì)我來說還是比較有用
  •   我覺得這本書也就是介紹了一下JDK7,又捎帶手提了以前已有的特性。所以感覺書的名字有點(diǎn)…………不過擴(kuò)寬了視野。希望能再往深度去挖掘,比如AIO的底層在不同平臺(tái)的實(shí)現(xiàn)原理等等,新try回收資源的原理,JDBC4.1新規(guī)范的支持程度的具體展現(xiàn)等等吧~~。總的來說還行吧
  •   沒咋深入探討其新版本的具體改變及其技術(shù)
  •   剛剛到手,和介紹的一樣,都是核心技術(shù),書里的文字很多,看著很舒服
  •   這本書寫的還不夠深入,比我想象的有點(diǎn)距離。
  •   有一些東西現(xiàn)實(shí)項(xiàng)目用不到,只能為了了解了解。不過這是作者用心寫的書。
  •   書本內(nèi)容一般,理論性強(qiáng)
  •   這個(gè)書很不錯(cuò),紙張很好,手感也不錯(cuò),內(nèi)容講解清晰,總體比較滿意
  •   還不錯(cuò),送來的時(shí)候檢查了下,有塑封,包裝還算完整
  •   簡(jiǎn)單一句:你值得擁有!
  •   這書其實(shí)挺貴的 我發(fā)現(xiàn)機(jī)械工業(yè)出版社出的書 都不便宜
  •   將的不錯(cuò)
  •   技術(shù)點(diǎn)的羅列,只能當(dāng)工具用用
  •   讀了,然后就把代碼用到工作中,然后害我調(diào)試了一天。書中有錯(cuò)誤,我也是酒后代碼。
  •   Java 7 New Fea***es Cookbook 的翻譯?
    早知道看英文的了。
  •   語言組織太死板,看起來太累,費(fèi)勁,書中的知識(shí)點(diǎn)都是文字,內(nèi)容介紹生硬,知識(shí)點(diǎn)描述沒有對(duì)應(yīng)圖進(jìn)行輔助的描述;書中目錄結(jié)構(gòu)中知識(shí)點(diǎn)還不錯(cuò),但是介紹,講解的不好。
  •   機(jī)工的書質(zhì)量越來越差,排版印刷都不好。希望改進(jìn)
  •   要想深入理解java核心技術(shù),這本書可以啊。
  •   這本應(yīng)該是最新的講JAVA7的,內(nèi)容很新,質(zhì)量好,送貨速度很快看得出來作者寫的比較用心,有很多之前沒有接觸到的東西,很有用加上買的時(shí)候卓越做活動(dòng),價(jià)錢很合適
  •   內(nèi)容不錯(cuò) 只是寫的太泛了 沒有整體的感覺不容易看懂
  •   就是羅列的一大堆特性,可以用來快速了解Java7有哪些新的高級(jí)功能
  •   不錯(cuò),寫得有些啰嗦,容易理解
  •   快遞慢,書的質(zhì)量還可以,但是內(nèi)容太雜,不是很合理,還是有點(diǎn)貴,不劃算
  •   雖然Java7的內(nèi)容占全書比例并不很高,不過輔助讀者理解這些內(nèi)容的資料卻是很到位,難得國(guó)內(nèi)有好書
  •   深度稍嫌欠缺不過一般也夠用了。作者領(lǐng)進(jìn)門,修行在個(gè)人。通讀后對(duì)Java API有全新認(rèn)識(shí),可以根據(jù)自己感興趣的部分繼續(xù)閱讀相關(guān)書籍加強(qiáng)深度。
  •   我是一個(gè)把教程當(dāng)小說看的人,不知道為什么這本書看不下去,或許就是作者的文字功底有問題吧。
  •   總體來說還是很不錯(cuò)的,有助于提高對(duì)Java7的認(rèn)識(shí)。哈哈。滿意。
  •   有4年java開發(fā)經(jīng)驗(yàn)了,本想著學(xué)習(xí)一下java7買了這本書,沒想到越往后看,越?jīng)]法看。后面章節(jié)基本都是隨便弄些個(gè)例子,告訴讀者有這么些功能,但是不會(huì)全面介紹,讀完還是啥都不會(huì)。不建議購買,建議作者學(xué)習(xí)一下李剛的《瘋狂java講義》,看看人家是怎樣寫書的。此書標(biāo)價(jià)79元,絕對(duì)不值。... 閱讀更多
  •   對(duì)Java 7新特性的闡述,很到位。有些地方講得比較深入,需要有一定功底的人才能徹底看明白。有些地方到現(xiàn)在還不是很懂,沒讀一遍都會(huì)加深理解,確實(shí)是不錯(cuò)的一本java書,值得一讀,僅此推薦。
  •   看到作者一篇關(guān)于ClassLoader的文章就知道作者確實(shí)是個(gè)大拿,不知道寫的書如何。
  •   書本內(nèi)容比較新,雖然講的不夠深入,但勝在全面,唯一不足的是,感覺到手的書沒有書店的書亮呢?我發(fā)覺在亞馬遜買的書差不多都是這樣。。我在書店離老遠(yuǎn)都能看到那些書閃閃發(fā)光,,自己到手的書則一點(diǎn)光都沒有,看起來有些暗,顏色也淺,表示懷疑其正版。。
  •   快速了解java7工具書
  •   還算可以,不過講的不是很深
  •   對(duì)Java7有深入理解
  •   很好的書,值得慢慢研讀
 

250萬本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7