深入理解Java虚拟机(第3版)

周志明

出版时间

2019-12-01

ISBN

9787111641247

评分

★★★★★

标签

编程

书籍介绍
这不是一本让你快速上手写代码的书,而是一把探入Java底层世界的探针。真正吸引读者的,是它把'为什么'讲透了:为什么GC日志要以[GC]开头、为什么对象移动后要放弃句柄机制、为什么老年代GC往往比新生代慢十倍以上——这些细节背后,藏着虚拟机对性能与正确性的取舍。书中大量来自生产环境的调优与故障排查案例,让'内存溢出''锁优化'不再是抽象名词,而是可被定位、可被解决的问题。它适合那些不满足于'会用'、渴望理解运行机理的开发者,也适合需要系统补齐JVM知识背景的一线工程师。当然,编译原理薄弱的读者会感到吃力,新版对部分特性的覆盖也仍有留白,但正因如此,它更像一位愿意和你一起'追求完美'的同行者,而非一本包罗万象的通识手册。
作者简介
周志明(博士) 资深Java技术专家、机器学习技术专家和企业级开发技术专家,现任远光软件研究院院长。开源技术的积极倡导者和推动者,对计算机科学相关的多个领域都有深刻的见解,尤其是人工智能、Java技术和敏捷开发等,对虚拟机技术有非常深入的研究。 撰写了《深入理解Java虚拟机》《深入理解OSGi》《智慧的疆界》等多本著作,翻译了《Java虚拟机规范》等著作。其中《深入理解Java虚拟机》已累计印刷逾36次,总销超过30万册,成为原创计算机专业图书领域难以逾越的丰碑。
AI导读
核心看点
  • 从原理与实践双维度剖析JVM,涵盖内存管理、执行引擎、编译优化及并发。
  • 第3版大幅修订,新增近50%内容,修正旧版瑕疵,适配新版JDK技术特性。
  • 全书分五部分系统讲解,包含大量生产环境实战案例,解决Java底层技术难题。
读者共识
  • 公认的经典之作,内容详实且语言生动,是国内JVM领域不可逾越的标杆。
  • 部分章节如编译优化过于硬核,初学者可能感到吃力,建议二刷或结合实践消化。
  • 虽有个别读者认为更新速度略滞后于最新JDK,但核心原理讲解依然极具价值。
精彩摘录
  • "GC日志开头的“[GC”和“[Full GC”说明了这次垃圾收集的停顿类型,而不是 用来区分新生代GC还是老年代GC的。如果有“Full”,说明这次GC是发生了Stop-The-World 的"
  • "由于使用了准确式内存管理,Exact VM可以抛弃掉以前Classic VM基于handler的对象查找方式(原因是GC后对象将可能会被移动位置,如果地址为123456的对象移动到654321,在没有明确信息表明内存中哪些数据是reference的前提下,那虚拟机是不敢把内存中所有为123456的值改成654321的,所以要使用句柄来保持reference值的稳定),这样每次定位对象都少了一次间接查找的开销,提升执行性能。"
  • "至此,官方提供的JDK可以运行于Windows(不含Windows 9x)、Linux、Solaris和Mac OS平台上,支持ARM、x86、x64和Sparc指令集架构类型。"
  • "虽然Exact VM的技术相对Classic VM来说先进了许多,但是在商业应用上只存在了很短暂的时间就被更为优秀的HotSpot VM所取代,甚至还没有来得及发布Windows和Linux平台下的商用版本。"
  • "存储局部变量表、操作栈、动态链接、方法出口等信息。"
  • "老年代GC(Major GC/Full GC):指发生在老年代的GC,出现了Major GC,经常会伴随至少一次的Minor GC(但非绝对的,在Parallel Scavenge收集器的收集策略里就有直接进行Major GC的策略选择过程)。Major GC的速度一般会比Minor GC慢10倍以上。"
  • "如果向CHA查询出来的结果是有多个版本的目标方法可供选择,则编译器"
  • "虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。"
目录
前言
致谢
第一部分 走近Java
第1章 走近Java 2
1.1 概述 2

显示全部
用户评论
先打个4分怕周志明老师骄傲,读完再来评价。 读完改成5星,两个礼拜读完,比第二版增加了不少内容。
这本书就像一块风干的牦牛肉,营养丰富,但是难啃。我现在是抱着它舔了一遍,并且留下了一些牙印。远远不够。
不愧经典
20201023翻过第一遍,真是虽迟但到。。。新工作必须在jvm平台上进行开发,只好老老实实补上相关的技术背景。
写得太好了,国内难得不是四处拼凑的计算机读物,语言生动易懂
很好 非常催眠
周志明说话能不能抓住重点!能不能讲一个问题的时候就好好讲这个问题!每次涉及到核心问题的时候就说些花边新闻来打岔,要么就说到之后哪个章节再具体谈…拜托,别一个问题东讲一点西讲一点,不是所有读者都那么闲要跟着你搁这玩拼图游戏!
今年第一本大部头,着实“深入理解JAVA虚拟机”,难得的中文原创技术书籍。推荐
神书好顶赞!想起这本书的第二版是我大三时候买的,很多次上自习都带着它,陪着我坐过大学几乎每一个可以找到的自习室,最后被我翻得不成样子,毕业之后又从威海带去成都又去杭州最后回到成都,见证了我至今的整个职场生涯……而今天又看完了它的第三版,真是唏嘘感慨啊。
理论讲的很好,等我再看一遍补星
下载
收藏