深入理解Java虚拟机:JVM高级特性与最佳实践

深入理解Java虚拟机:JVM高级特性与最佳实践

编辑推荐

本书极尽化繁为简之妙,能带领你在轻松中领略Java虚拟机的奥秘。

内容简介

本书是近年来国内出版的一本与Java虚拟机相关的专著,也是一本同时从核心理论和实际运用这两个角度去探讨Java虚拟机的著作,不仅理论分析得透彻,而且书中包含的典型案例和实践也极具现实指导意义。全书共分为五大部分。部分从宏观的角度介绍了整个Java技术体系的过去、现在和未来,以及如何独立地编译一个OpenJDK7,这对理解后面的内容很有帮助。第二部分讲解了JVM的自动内存管理,包括虚拟机内存区域的划分原理以及各种内存溢出异常产生的原因;常见的垃圾收集算法以及垃圾收集器的特点和工作原理;常见的虚拟机的监控与调试工具的原理和使用方法。第三部分分析了虚拟机的执行子系统,包括Class的文件结构以及如何存储和访问Class中的数据;虚拟机的类创建机制以及类加载器的工作原理和它对虚拟机的意义;虚拟机字节码的执行引擎以及它在实行代码时涉及的内存结构。第四部分讲解了程序的编译与代码的优化,阐述了泛型、自动装箱拆箱、条件编译等语法糖的原理;讲解了虚拟机的热点探测方法、HotSpot的即时编译器、编译触发条件,以及如何从虚拟机外部观察和分析JIT编译的数据和结果。第五部分探讨了Java实现高效并发的原理,包括JVM内存模型的结构和操作;原子性、可见性和有序性在Java内存模型中的体现;先行发生原则的规则和使用;线程在Java语言中的实现原理;虚拟机实现高效并发所做的一系列锁优化措施。

作者简介

作者周志明,资深Java技术专家,对JavaEE企业级应用开发、OSGi、Java虚拟机和工作流等都有深入的研究,并在大量的实践中积累了丰富的经验。尤其精通Java虚拟机,撰写了大量与JVM相关的经典文章,被各大技术社区争相转载,是ITeye等技术社区公认的Java虚拟机方面的领袖人物之一。现任远光软件股份有限公司平台开发部经理兼平台架构师,先后参加与过国家电网、南方电网等多个国家级大型ERP项目的平台架构工作,对软件系统架构也有深刻的认识和体会。

章节目录

版权信息

前言

致谢

第一部分 走近Java

第1章 走近Java

1.1 概述

1.2 Java技术体系

1.3 Java发展史

1.4 展望Java技术的未来

1.5 实战:自己编译JDK

1.6 本章小结

第二部分 自动内存管理机制

第2章 Java内存区域与内存溢出异常

2.1 概述

2.2 运行时数据区域

2.3 对象访问

2.4 实战:OutOfMemoryError异常

2.5 本章小结

第3章 垃圾收集器与内存分配策略

3.1 概述

3.2 对象已死?

3.3 垃圾收集算法

3.4 垃圾收集器

3.5 内存分配与回收策略

3.6 本章小结

第4章 虚拟机性能监控与故障处理工具

4.1 概述

4.2 JDK的命令行工具

4.3 JDK的可视化工具

4.4 本章小结

第5章 调优案例分析与实战

5.1 概述

5.2 案例分析

5.3 实战:Eclipse运行速度调优

5.4 本章小结

第三部分 虚拟机执行子系统

第6章 类文件结构

6.1 概述

6.2 无关性的基石

6.3 Class类文件的结构

6.4 Class文件结构的发展

6.5 本章小结

第7章 虚拟机类加载机制

7.1 概述

7.2 类加载的时机

7.3 类加载的过程

7.4 类加载器

7.5 本章小结

第8章 虚拟机字节码执行引擎

8.1 概述

8.2 运行时栈帧结构

8.3 方法调用

8.4 基于栈的字节码解释执行引擎

8.5 本章小结

第9章 类加载及执行子系统的案例与实战

9.1 概述

9.2 案例分析

9.3 实战:自己动手实现远程执行功能

9.4 本章小结

第四部分 程序编译与代码优化

第10章 早期(编译期)优化

10.1 概述

10.2 Javac编译器

10.3 Java语法糖的味道

10.4 实战:插入式注解处理器

10.5 本章小结

第11章 晚期(运行期)优化

11.1 概述

11.2 HotSpot虚拟机内的即时编译器

11.3 编译优化技术

11.4 Java与C/C++的编译器对比

11.5 本章小结

第五部分 高效并发

第12章 Java内存模型与线程

12.1 概述

12.2 硬件的效率与一致性

12.3 Java内存模型

12.4 Java与线程

12.5 本章小结

第13章 线程安全与锁优化

13.1 概述

13.2 线程安全

13.3 锁优化

13.4 本章小结

附录A Java虚拟机家族

附录B 虚拟机字节码指令表

附录C HotSpot虚拟机主要参数表

附录D 对象查询语言(OQL)简介[1]

D.1 SELECT子句

D.2 FROM子句

D.3 WHERE子句

D.4 属性访问器

D.5 OQL语言的BNF范式

附录E JDK历史版本轨迹

深入理解Java虚拟机:JVM高级特性与最佳实践是2011年由机械工业出版社华章分社出版,作者周志明。

得书感谢您对《深入理解Java虚拟机:JVM高级特性与最佳实践》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
深入浅出密码学 电子书

本书由资深的密码学大咖DavidWong编写,由专业研究密码学的博士和硕士团队翻译完成。
Go语言高级编程 电子书

Go语言进阶实战,CGO编程web编程书。
HBase入门与实践 电子书

大数据时代快速上手HBase行动指南。
OpenCV图像处理入门与实践 电子书

基于OpenCV4与Python,循序渐进介绍OpenCV从入门到实践的内容。