現貨 深入理解JAVA虛擬機JVM特性與佳實踐(第2版) Java書籍/JAVA程序設計

現貨 深入理解JAVA虛擬機JVM特性與佳實踐(第2版) Java書籍/JAVA程序設計 pdf epub mobi txt 电子书 下载 2025

想要找书就要到 求知書站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
店铺: 经纶风图书专营店
出版社: 机械工业出版社
ISBN:9787111421900
商品编码:28745629330
包装:平装
套装数量:1

具体描述


書名: 【正版】深入理解Java虛擬機:JVM特性與佳實踐(第2版)|3768003
圖書定價: 79元
圖書作者: 周誌明
齣版社: 機械工業齣版社
齣版日期: 2013/6/1 0:00:00
ISBN號: 9787111421900
開本: 16開
頁數: 433
版次: 2-1
《深入理解Java虛擬機:JVM特性與佳實踐(第2版)》
前言
部分 走近Java
第1章 走近Java / 2
1.1 概述 / 2
1.2 Java技術體係 / 3
1.3 Java發展史 / 5
1.4 Java虛擬機發展史 / 9
1.4.1 Sun Classic / Exact VM / 9
1.4.2 Sun HotSpot VM / 11
1.4.3 Sun Mobile-Embedded VM / Meta-Circular VM / 12
1.4.4 BEA JRockit / IBM J9 VM / 13
1.4.5 Azul VM / BEA Liquid VM / 14
1.4.6 Apache Harmony / Google Android Dalvik VM / 14
1.4.7 Microsoft JVM及其他 / 15
1.5 展望Java技術的未來 / 16
1.5.1 模塊化 / 17
1.5.2 混閤語言 / 17
1.5.3 多核並行 / 19
1.5.4 進一步豐富語法 / 20
1.5.5 64位虛擬機 / 21
1.6 實戰:自己編譯JDK / 22
1.6.1 獲取JDK源碼 / 22
1.6.2 係統需求 / 24
1.6.3 構建編譯環境 / 25
1.6.4 進行編譯 / 26
1.6.5 在IDE工具中進行源碼調試 / 31
1.7 本章小結 / 35
第二部分 自動內存管理機製
第2章 Java內存區域與內存溢齣異常 / 38
2.1 概述 / 38
2.2 運行時數據區域 / 38
2.2.1 程序計數器 / 39
2.2.2 Java虛擬機棧 / 39
2.2.3 本地方法棧 / 40
2.2.4 Java堆 / 41
2.2.5 方法區 / 41
2.2.6 運行時常量池 / 42
2.2.7 直接內存 / 43
2.3 HotSpot虛擬機對象探秘 / 43
2.3.1 對象的創建 / 44
2.3.2 對象的內存布局 / 47
2.3.3 對象的訪問定位 / 48
2.4 實戰:OutOfMemoryError異常 / 50
2.4.1 Java堆溢齣 / 51
2.4.2 虛擬機棧和本地方法棧溢齣 / 53
2.4.3 方法區和運行時常量池溢齣 / 56
2.4.4 本機直接內存溢齣 / 59
2.5 本章小結 / 60
第3章 垃圾收集器與內存分配策略 / 61
3.1 概述 / 61
3.2 對象已死嗎 / 62
3.2.1 引用計數算法 / 62
3.2.2 可達性分析算法 / 64
3.2.3 再談引用 / 65
3.2.4 生存還是死亡 / 66
3.2.5 迴收方法區 / 68
3.3 垃圾收集算法 / 69
3.3.1 標記-清除算法 / 69
3.3.2 復製算法 / 70
3.3.3 標記-整理算法 / 71
3.3.4 分代收集算法 / 72
3.4 HotSpot的算法實現 / 72
3.4.1 枚舉根節點 / 72
3.4.2 點 / 73
3.4.3 區域 / 74
3.5 垃圾收集器 / 75
3.5.1 Serial收集器 / 76
3.5.2 ParNew收集器 / 77
3.5.3 Parallel Scavenge收集器 / 79
3.5.4 Serial Old收集器 / 80
3.5.5 Parallel Old收集器 / 80
3.5.6 CMS收集器 / 81
3.5.7 G1收集器 / 84
3.5.8 理解GC日誌 / 89
3.5.9 垃圾收集器參數總結 / 90
3.6 內存分配與迴收策略 / 91
3.6.1 對象優先在Eden分配 / 91
3.6.2 大對象直接進入老年代 / 93
3.6.3 長期存活的對象將進入老年代 / 95
3.6.4 動態對象年齡判定 / 97
3.6.5 空間分配擔保 / 98
3.7 本章小結 / 100
第4章 虛擬機性能監控與故障處理工具 / 101
4.1 概述 / 101
4.2 JDK的命令行工具 / 101
4.2.1 jps:虛擬機進程狀況工具 / 104
4.2.2 jstat:虛擬機統計信息監視工具 / 105
4.2.3 jinfo:Java配置信息工具 / 106
4.2.4 jmap:Java內存映像工具 / 107
4.2.5 jhat:虛擬機堆轉儲快照分析工具 / 108
4.2.6 jstack:Java堆棧跟蹤工具 / 109
4.2.7 HSDIS:JIT生成代碼反匯編 / 111
4.3 JDK的可視化工具 / 114
4.3.1 JConsole:Java監視與管理控製颱 / 115
4.3.2 VisualVM:多閤一故障處理工具 / 122
4.4 本章小結 / 131
第5章 調優案例分析與實戰 / 132
5.1 概述 / 132
5.2 案例分析 / 132
5.2.1 高性能硬件上的程序部署策略 / 132
5.2.2 集群間同步導緻的內存溢齣 / 135
5.2.3 堆外內存導緻的溢齣錯誤 / 136
5.2.4 外部命令導緻係統緩慢 / 137
5.2.5 服務器JVM進程崩潰 / 138
5.2.6 不恰當數據結構導緻內存占用過大 / 139
5.2.7 由Windows虛擬內存導緻的長時間停頓 / 141
5.3 實戰:Eclipse運行速度調優 / 142
5.3.1 調優前的程序運行狀態 / 142
5.3.2 升級JDK 1.6的性能變化及兼容問題 / 145
5.3.3 編譯時間和類加載時間的優化 / 150
5.3.4 調整內存設置控製垃圾收集頻率 / 153
5.3.5 選擇收集器降低延遲 / 157
5.4 本章小結 / 160
第三部分 虛擬機執行子係統
第6章 類文件結構 / 162
6.1 概述 / 162
6.2 無關性的基石 / 162
6.3 Class類文件的結構 / 164
6.3.1 魔數與Class文件的版本 / 166
6.3.2 常量池 / 167
6.3.3 訪問標誌 / 173
6.3.4 類索引、父類索引與接口索引集閤 / 174
6.3.5 字段錶集閤 / 175
6.3.6 方法錶集閤 / 178
6.3.7 屬性錶集閤 / 180
6.4 字節碼指令簡介 / 196
6.4.1 字節碼與數據類型 / 197
6.4.2 加載和存儲指令 / 199
6.4.3 運算指令 / 200
6.4.4 類型轉換指令 / 202
6.4.5 對象創建與訪問指令 / 203
6.4.6 操作數棧管理指令 / 203
6.4.7 控製轉移指令 / 204
6.4.8 方法調用和返迴指令 / 204
6.4.9 異常處理指令 / 205
6.4.10 同步指令 / 205
6.5 公有設計和私有實現 / 206
6.6 Class文件結構的發展 / 207
6.7 本章小結 / 208
第7章 虛擬機類加載機製 / 209
7.1 概述 / 209
7.2 類加載的時機 / 210
7.3 類加載的過程 / 214
7.3.1 加載 / 214
7.3.2 驗證 / 216
7.3.3 準備 / 219
7.3.4 解析 / 220
7.3.5 初始化 / 225
7.4 類加載器 / 227
7.4.1 類與類加載器 / 228
7.4.2 雙委派模型 / 229
7.4.3 破壞雙委派模型 / 233
7.5 本章小結 / 235
第8章 虛擬機字節碼執行引擎 / 236
8.1 概述 / 236
8.2 運行時棧幀結構 / 236
8.2.1 局部變量錶 / 238
8.2.2 操作數棧 / 242
8.2.3 動態連接 / 243
8.2.4 方法返迴地址 / 243
8.2.5 附加信息 / 244
8.3 方法調用 / 244
8.3.1 解析 / 244
8.3.2 分派 / 246
8.3.3 動態類型語言支持 / 258
8.4 基於棧的字節碼解釋執行引擎 / 269
8.4.1 解釋執行 / 269
8.4.2 基於棧的指令集與基於寄存器的指令集 / 270
8.4.3 基於棧的解釋器執行過程 / 272
8.5 本章小結 / 275
第9章 類加載及執行子係統的案例與實戰 / 276
9.1 概述 / 276
9.2 案例分析 / 276
9.2.1 Tomcat:正統的類加載器架構 / 276
9.2.2 OSGi:靈活的類加載器架構 / 279
9.2.3 字節碼生成技術與動態代理的實現 / 282
9.2.4 Retrotranslator:跨越JDK版本 / 286
9.3 實戰:自己動手實現遠程執行功能 / 289
9.3.1 目標 / 290
9.3.2 思路 / 290
9.3.3 實現 / 291
9.3.4 驗證 / 298
9.4 本章小結 / 299
第四部分 程序編譯與代碼優化
第10章 早期(編譯期)優化 / 302
10.1 概述 / 302
10.2 Javac編譯器 / 303
10.2.1 Javac的源碼與調試 / 303
10.2.2 解析與填充符號錶 / 305
10.2.3 注解處理器 / 307
10.2.4 語義分析與字節碼生成 / 307
10.3 Java語法糖的味道 / 311
10.3.1 泛型與類型擦除 / 311
10.3.2 自動裝箱、拆箱與遍曆循環 / 315
10.3.3 條件編譯 / 317
10.4 實戰:插入式注解處理器 / 318
10.4.1 實戰目標 / 318
10.4.2 代碼實現 / 319
10.4.3 運行與測試 / 326
10.4.4 其他應用案例 / 327
10.5 本章小結 / 328
第11章 晚期(運行期)優化 / 329
11.1 概述 / 329
11.2 HotSpot虛擬機內的即時編譯器 / 329
11.2.1 解釋器與編譯器 / 330
11.2.2 編譯對象與觸發條件 / 332
11.2.3 編譯過程 / 337
11.2.4 查看及分析即時編譯結果 / 339
11.3 編譯優化技術 / 345
11.3.1 優化技術概覽 / 346
11.3.2 公共子錶達式消除 / 350
11.3.3 數組邊界檢查消除 / 351
11.3.4 方法內聯 / 352
11.3.5 逃逸分析 / 354
11.4 Java與C/C++的編譯器對比 / 356
11.5 本章小結 / 358
第五部分 並發
第12章 Java內存模型與綫程 / 360
12.1 概述 / 360
12.2 硬件的效率與一緻性 / 361
12.3 Java內存模型 / 362
12.3.1 主內存與工作內存 / 363
12.3.2 內存間交互操作 / 364
12.3.3 對於volatile型變量的特殊規則 / 366
12.3.4 對於long和double型變量的特殊規則 / 372
12.3.5 原子性、可見性與有序性 / 373
12.3.6 先行發生原則 / 375
12.4 Java與綫程 / 378
12.4.1 綫程的實現 / 378
12.4.2 Java綫程調度 / 381
12.4.3 狀態轉換 / 383
12.5 本章小結 / 384
第13章 綫程與鎖優化 / 385
13.1 概述 / 385
13.2 綫程 / 385
13.2.1 Java語言中的綫程 / 386
13.2.2 綫程的實現方法 / 390
13.3 鎖優化 / 397
13.3.1 自鏇鎖與自適應自鏇 / 398
13.3.2 鎖消除 / 398
13.3.3 鎖粗化 / 400
13.3.4 輕量級鎖 / 400
13.3.5 偏嚮鎖 / 402
13.4 本章小結 / 403
附 錄
附錄A 編譯Windows版的OpenJDK / 406
附錄B 虛擬機字節碼指令錶 / 414
附錄C HotSpot虛擬機主要參數錶 / 420
附錄D 對象查詢語言(OQL)簡介 / 424
附錄E JDK曆史版本軌跡 / 430
《深入理解Java虛擬機:JVM特性與佳實踐(第2版)》第1版兩年內印刷近10次,4傢網上書店的評論近4?000條,98%以上的評論全部為5星級的好評,是整個Java圖書領域公認的經典著作和超級書,繁體版在颱灣也十分受歡迎。第2版在第1版的基礎上做瞭很大的改進:根據新的JDK 1.7對全書內容進行瞭全麵的升級和補充;增加瞭大量處理各種常見JVM問題的技巧和佳實踐;增加瞭若乾與生産環境相結閤的實戰案例;對第1版中的錯誤和不足之處的修正;等等。第2版不僅技術更新、內容更豐富,而且實戰性更強。
全書共分為五大部分,圍繞內存管理、執行子係統、程序編譯與優化、並發等核心主題對JVM進行瞭全麵而深入的分析,深刻揭示瞭JVM的工作原理。部分從宏觀的角度介紹瞭整個Java技術體係、Java和JVM的發展曆程、模塊化,以及JDK的編譯,這對理解本書後麵內容有重要幫助。第二部分講解瞭JVM的自動內存管理,包括虛擬機內存區域的劃分原理以及各種內存溢齣異常産生的原因;常見的垃圾收集算法以及垃圾收集器的特點和工作原理;常見虛擬機監控與故障處理工具的原理和使用方法。第三部分分析瞭虛擬機的執行子係統,包括類文件結構、虛擬機類加載機製、虛擬機字節碼執行引擎。第四部分講解瞭程序的編譯與代碼的優化,闡述瞭泛型、自動裝箱拆箱、條件編譯等語法糖的原理;講解瞭虛擬機的熱點探測方法、HotSpot的即時編譯器、編譯觸發條件,以及如何從虛擬機外部觀察和分析JIT編譯的數據和結果;第五部分探討瞭Java實現並發的原理,包括JVM內存模型的結構和操作;原子性、可見性和有序性在Java內存模型中的體現;先行發生原則的規則和使用;綫程在Java語言中的實現原理;虛擬機實現並發所做的一係列鎖優化措施。


用户评价

评分

评分

评分

评分

评分

评分

评分

评分

评分

相关图书

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 tushu.tinynews.org All Rights Reserved. 求知書站 版权所有