深入剖析Java虚拟机:源码剖析与实例详解pdf下载pdf下载

深入剖析Java虚拟机:源码剖析与实例详解百度网盘pdf下载

作者:
简介:本篇主要提供深入剖析Java虚拟机:源码剖析与实例详解pdf下载
出版社:机械工业出版社自营官方旗舰店
出版时间:2021-09
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

产品特色








内容简介

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》以流行的工业级Java虚拟机HotSpot为基础,详细剖析其基础功能模块的源码,力求讲清楚每个重要技术的原理和实现细节,同时结合大量实例和图示帮助读者更好地理解所讲内容。《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》没有介绍Java运行时的栈结构,以及解释执行与编译执行等知识点,这些内容在《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》的姊妹篇《深入剖析Java虚拟机:源码剖析与实例详解(运行时卷)》一书中进行详细的介绍。

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》共13章,章节顺序基本上是按照类的生命周期进行编排的。《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》涵盖的主要内容有HotSpot VM简介、对象的二分模型、类的加载机制、类与常量池的解析、字段的解析、方法的解析、类的连接与初始化、运行时数据区、类对象的创建和初始化、Serial垃圾收集器、Serial Old垃圾收集器以及Java引用类型的实现原理等。

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》主要面向想要深入学习和研究Java语言运行原理的人,尤其是正在从事或将来想要从事虚拟机开发的编程人员。另外,《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》还非常适合Java求职人员阅读,可以帮助他们系统掌握虚拟机的相关知识,从而游刃有余地应对相关公司招聘时的考查。


作者简介

马智 有多年的Java开发经验,先后在掌游天下和京东集团任软件研发工程师。对编程语言的底层实现有浓厚的兴趣,深入研究过OpenJDK的源码实现。著有《深入解析Java编译器:源码剖析与实例详解》一书,颇受读者好评。


前言/序言

为什么要写这本书

Java是一门流行多年的高级编程语言,与其相关的就业岗位很多,但是最近几年却出现了用人单位招不到合适的人,而大量Java程序员找不到工作的尴尬局面。究其根本原因是岗位对Java开发技术的要求高,不但要会应用,而且更要懂其内部的运行原理。对于想要深入研究Java技术的从业人员来说,虚拟机是绕不开的话题。目前国内市场上还鲜见一本全面、细致、深入剖析Java虚拟机源码的书籍,这正是《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》要填补的市场空白。

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》围绕Java最流行的HotSpot VM进行源码的深度剖析,主要面向那些想要深入学习和研究Java语言运行原理的人。《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》对那些正在从事或将来想要从事虚拟机开发的编程人员也有极大的帮助。另外,对于Java求职人员来说,在参加大型互联网公司的面试时,应对招聘企业对虚拟机相关知识的深度考查已成为不可回避的问题,《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》正好能提高他们对虚拟机理解的广度和深度,可谓雪中送炭。

需要说明的是,HotSpot VM有上百万行的代码,这些代码逻辑严密,细节众多,要想讲解清楚,需要较多的篇幅。为了让读者能够更好地理解其中的要点,笔者决定用两《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》的篇幅来介绍HotSpot VM的相关知识。《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》为《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》,后续还会推出《深入剖析Java虚拟机:源码剖析与实例详解(运行时卷)》,敬请各位读者关注。笔者会在这两《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》中对HoSpot VM的重点源代码展开细致的讲解,同时还会结合大量实例和图示,帮助读者更好地理解所学知识。

本书特色1.内容丰富,讲解详细

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》对对象的二分模型、类的加载机制、类与常量池、方法与变量、对象的创建和初始化、Serial和Serial Old垃圾收集器、Java引用类型等内容进行详细解读,帮读者真正掌握HotSpot VM运行的每个细节。

2.原理分析与实例并重

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》对HotSpot VM的各个基础功能模块的重点源代码进行了详细分析,并结合大量实例和图示帮助读者更好地理解所学内容。

3.分析工业级虚拟机的源码实现

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》分析的是一个工业级的Java虚拟机HotSpot,它是大部分Java开发人员运行Java项目时使用的虚拟机。对于Java从业人员来说,深入理解HotSpot VM的运行原理,可以帮助他们写出更加高效的Java代码,同时也能更好地排查Java性能瓶颈等一系列问题。

本书内容

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》深入剖析HotSpot VM的源代码实现,每一章都会对重点源代码的实现进行解读。下面简单介绍一下《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》中各章的内容。

第1章主要介绍本地编译HotSpot VM的具体过程,以及如何使用图形化工具对HotSpot VM的源代码进行调试。

第2章介绍类的二分模型,其中表示Java类的Klass模型与表示Java对象的oop模型是HotSpot VM的最基础部分。

第3章介绍类的加载,重点介绍核心类和数组类的加载过程,以及类加载的双亲委派机制。

第4章对类及常量池进行解析,按照Class文件的格式从Class文件中解析出存储的类及常量池信息,然后映射成HotSpot VM内部的表示形式。

第5章对字段进行解析,解析出Class文件中保存的字段信息后映射为HotSpot VM内部的表示形式,同时还要对实例字段进行布局。

第6章对方法进行解析,解析出Class文件中保存的方法信息后映射为HotSpot VM内部的表示形式,并初始化klassVtable与klassItable以更好地支持方法的运行。

第7章介绍类的连接和初始化过程。

第8章介绍HotSpot VM的内存划分,重点介绍元空间和堆空间,如元空间的数据结构及其内存分配和释放,以及堆的初始化和回收策略等。

第9章介绍Java对象的创建过程,重点介绍对象内存分配的具体过程。

第10章介绍垃圾回收的基础知识,包括垃圾回收算法、支持分代垃圾回收的卡表和偏移表、支持垃圾回收的安全点。

第11章介绍用于回收年轻代的Serial垃圾收集器。

第12章介绍用于回收老年代的Serial Old垃圾收集器。

第13章介绍Java引用类型,包括引用类型的查找及不同类型引用对象的回收处理逻辑。

本书读者对象

阅读《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》需要读者有一定的编程经验,尤其要对Java语言有一定的了解。具体而言,《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》主要适合以下读者阅读:

l 想深入学习Java语言特性的Java从业人员;

l 想全面、深入理解HotSpot VM原理的人员;

l 从事虚拟机开发的人员;

l 对大型工程的源代码感兴趣的人员,尤其是对C++语言工程实践感兴趣的人员。

本书阅读建议

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》的内容循序渐进,建议读者按照章节的排列顺序进行阅读,同时在阅读每一章的过程中对书中给出的实例进行实践,以便更好地理解所讲的内容。

HotSpot VM有上百万行的源代码,并且代码的逻辑密度非常大。读者阅读相关的源代码时,不要过分纠结于每个实现细节,否则会陷入细节的“汪洋大海”中。《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》对HotSpot VM的重点源代码进行了解读,读者可以参考书中对这些重点源代码的讲解进行学习和调试。

另外,要深入理解Java的运行原理,需要读者对Java编译器有所了解。想要全面、深入地学习Java编译器的相关知识,推荐读者阅读笔者的拙作《深入解析Java编译器:源码剖析与实例详解》一书。该书出版后得到了广大Java技术爱好者的好评,是深入学习Java主流编译器Javac运行原理的理想选择。

本书配套资源

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》涉及的HotSpot VM源代码已经开源,读者可以通过多种途径获取。笔者推荐的下载网址为https://download.java.net/openjdk/jdk8。

读者反馈

由于笔者水平所限,书中可能还存在一些疏漏,敬请读者指正,笔者会及时进行调整和修改。联系邮箱hzbook2017@163.com。

致谢

《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》的写作得到很多朋友和同事的帮助与支持,笔者在此表示由衷的感谢!

感谢欧振旭编辑在《深入剖析Java虚拟机:源码剖析与实例详解(基础卷)》出版过程中给予笔者的大力支持与帮助!

最后感谢家人对我的理解与支持,在我遇到挫折和问题时,家人坚定地支持着我。爱你们!

……