1. 程式人生 > >深入理解Java虛擬機器:JVM高階特性與最佳實踐

深入理解Java虛擬機器:JVM高階特性與最佳實踐

目 錄 [ - ]


作者: 周志明     

出版社: 機械工業出版社

ISBN: 9787111349662

出版日期: 2011 年7月

內容簡介

       作為一位Java程式設計師,你是否也曾經想深入理解Java虛擬機器,但是卻被它的複雜和深奧拒之門外?沒關係,本書極盡化繁為簡之妙,能帶領你在輕鬆中領略Java虛擬機器的奧祕。本書是近年來國內出版的唯一一本與Java虛擬機器相關的專著,也是唯一一本同時從核心理論和實際運用這兩個角度去探討Java虛擬機器的著作,不僅理論分析得透徹,而且書中包含的典型案例和最佳實踐也極具現實指導意義。
       全書共分為五大部分。第一部分從巨集觀的角度介紹了整個Java技術體系的過去、現在和未來,以及如何獨立地編譯一個OpenJDK7,這對理解後面的內容很有幫助。第二部分講解了JVM的自動記憶體管理,包括虛擬機器記憶體區域的劃分原理以及各種記憶體溢位異常產生的原因;常見的垃圾收集

演算法以及垃圾收集器的特點和工作原理;常見的虛擬機器的監控與除錯工具的原理和使用方法。第三部分分析了虛擬機器的執行子系統,包括Class的檔案結構以及如何儲存和訪問Class中的資料;虛擬機器的類建立機制以及類載入器的工作原理和它對虛擬機器的意義;虛擬機器位元組碼的執行引擎以及它在實行程式碼時涉及的記憶體結構。第四部分講解了程式的編譯與程式碼的優化,闡述了泛型、自動裝箱拆箱、條件編譯等語法糖的原理;講解了虛擬機器的熱點探測方法、HotSpot的即時編譯器、編譯觸發條件,以及如何從虛擬機器外部觀察和分析JIT編譯的資料和結果。第五部分探討了Java實現高效併發的原理,包括JVM記憶體模型的結構和操作;原子性、可見性和有序性在Java記憶體模型中的體現;先行發生原則的規則和使用;執行緒在Java語言中的實現原理;虛擬機器實現高效併發所做的一系列鎖優化措施。
       本書適合所有Java程式設計師、系統調優師和系統
架構
師閱讀。

作者簡介

       周志明,資深Java技術專家,對JavaEE企業級應用開發、OSGi、Java虛擬機器和工作流等都有深入的研究,並在大量的實踐中積累了豐富的經驗。尤其精通Java虛擬機器,撰寫了大量與JVM相關的經典文章,被各大技術社群爭相轉載,是ITeye等技術社群公認的Java虛擬機器方面的領袖人物之一。現任遠光軟體股份有限公司平臺開發部經理兼平臺架構師,先後參加與過國家電網、南方電網等多個國家級大型ERP專案的平臺架構工作,對軟體系統架構也有深刻的認識和體會。

專家推薦

       Java 程式是如何執行的?Java虛擬機器在其中扮演了怎樣的角色?如何讓Java程式具有更高的併發性?許多Java程式設計師都會諸如此類的疑問。無奈,國內在很長一段時間裡都沒有一本從實際應用的角度講解Java虛擬機器的著作,本書的出版可謂填補了這個空白。它從Java程式設計師的角度出發,系統地將Java程式執行過程中涉及的各種知識整合到了一起,並配以日常工作中可能會碰到的疑難案例,引領讀者輕鬆踏上探索Java虛擬機器的旅途,是廣大對Java虛擬機器感興趣的讀者的福音!——莫樞(RednaxelaFX) 虛擬機器和程式語言愛好者

       在武俠的世界裡,無論是至剛至強的《易筋經》,還是陰柔無比的《葵花寶典》,都離不開內功修煉。沒有了內功心法,這些武術只是花拳繡腿的拙劣表演而已。軟體業是武林江湖的一個翻版,也有著大量的模式、套路、規範等外功,但“外功修行,內功修神”,要想成為“掃地僧”一樣的絕世高人,此書是必備的。——秦小波 資深Java技術專家/著有暢銷書《設計模式之禪》

       對Java程式設計師來說,Java虛擬機器可以說是既熟悉又神祕,很少Java程式設計師能夠抑制自己探究它的衝動。可惜,分析JVM實現原理的書籍(特別是國內作者出版的)是少之又少。本書的出版可謂Java程式設計師的福音,作者將自己多年來在Java虛擬機器領域的實踐經驗和研究心得呈現在了這本書中,不僅系統地講解了Java虛擬機器工作機制和底層原理,而且更難能可貴的是與實踐很好地結合了起來,具有非常強的實踐指導意義,強烈推薦!——計文柯 資深Java技術專家/著有暢銷書《

spring技術內幕:深入解析Spring架構設計與實現原理》