深入拆解Java虚拟机
郑雨迪
Oracle 高级研究员,计算机博士
立即订阅
27947 人已学习
课程目录
已完结 39 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 为什么我们要学习Java虚拟机?
免费
模块一:Java虚拟机基本原理 (12讲)
01 | Java代码是怎么运行的?
02 | Java的基本类型
03 | Java虚拟机是如何加载Java类的?
04 | JVM是如何执行方法调用的?(上)
05 | JVM是如何执行方法调用的?(下)
06 | JVM是如何处理异常的?
07 | JVM是如何实现反射的?
08 | JVM是怎么实现invokedynamic的?(上)
09 | JVM是怎么实现invokedynamic的?(下)
10 | Java对象的内存布局
11 | 垃圾回收(上)
12 | 垃圾回收(下)
模块二:高效编译 (12讲)
【工具篇】 常用工具介绍
13 | Java内存模型
14 | Java虚拟机是怎么实现synchronized的?
15 | Java语法糖与Java编译器
16 | 即时编译(上)
17 | 即时编译(下)
18 | 即时编译器的中间表达形式
19 | Java字节码(基础篇)
20 | 方法内联(上)
21 | 方法内联(下)
22 | HotSpot虚拟机的intrinsic
23 | 逃逸分析
模块三:代码优化 (10讲)
24 | 字段访问相关优化
25 | 循环优化
26 | 向量化
27 | 注解处理器
28 | 基准测试框架JMH(上)
29 | 基准测试框架JMH(下)
30 | Java虚拟机的监控及诊断工具(命令行篇)
31 | Java虚拟机的监控及诊断工具(GUI篇)
32 | JNI的运行机制
33 | Java Agent与字节码注入
模块四:黑科技 (3讲)
34 | Graal:用Java编译Java
35 | Truffle:语言实现框架
36 | SubstrateVM:AOT编译框架
尾声 (1讲)
尾声 | 道阻且长,努力加餐
深入拆解Java虚拟机
登录|注册

尾声 | 道阻且长,努力加餐

郑雨迪 2018-10-15
说句实话,我也不知道是怎么写完这 36 篇技术文章的。
一周三篇的文章接近近万字,说多不多,对我而言还是挺困难的一件事。基本上,我连续好几个月的业余时间都贡献给写作,甚至一度重温了博士阶段被论文支配的恐怖。我想,这大概也算是在工作相对清闲的国外环境下,体验了一把 997 的生活。
这一路下来,我感觉写专栏的最大问题,其实并不在于写作本身,而在于它对你精力的消耗,这种消耗甚至会让你无法专注于本职工作。因此,我也愈发地佩服能够持续分享技术的同行们。还好我的工作挺有趣的,每天开开心心地上班写代码,只是一到下班时间就蔫了,不得不应付编辑的催稿回家码字。
我在写作的中途,多次感受到存稿不足的压力,以致于需要请年假来填补写作的空缺。不过,最后做到了风雨无阻、节假无休地一周三更,也算是幸不辱命吧。
说回专栏吧。在思考专栏大纲时,我想着,最好能够和杨晓峰老师的 Java 核心技术专栏形成互补,呈现给大家的内容相对更偏向于技术实现。
因此,有读者曾反馈讲解的知识点是否太偏,不实用。当时我的回答是,我并不希望将专栏单纯写成一本工具书,这样的知识你可以从市面上任意买到一本书获得。
我更希望的是,能够通过介绍 Java 虚拟机各个组件的设计和实现,让你之后遇到虚拟机相关的问题时,能够联想到具体的模块,甚至是对于其他语言的运行时,也可以举一反三相互对照。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《深入拆解Java虚拟机》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(48)

  • Len 置顶
    这个专栏让我对 JVM 的实现产生了浓厚的兴趣。

    作者回复: 多谢支持!

    2018-10-15
    15
  • 三木子 置顶
    本专栏是对市面上介绍虚拟机知识扩展和补充。物有所值。老师辛苦了!

    作者回复: 多谢支持!

    2018-10-15
    5
  • godtrue
    非常感谢,雨迪老师辛苦啦!
    这个专栏我一直在跟进学习,可能是功力不足,部分内容认为弄明白了,有些内容认为理解不到位,后续会继续努力!
    看了R大的书目和博文中学习的明目,顿感差距可用天壤之别来形容,这个专栏结束了,但这不是学习的结束而是新的开始!
    感谢您的一路陪伴,感谢🙏!

    作者回复: 多谢godtrue的多条长评!印象深刻!

    2018-10-15
    8
  • 航go
    一路看下来,虽然很多知识点暂时还消化不了,但是却有一个很强烈的感受:jvm还得好好学,不只是原理,还有为何如此设计。
    2018-11-16
    2
  • fengxingtianxia
    物有所值。老师辛苦了!

    作者回复: 多谢支持!

    2018-10-19
    2
  • Desire
    感谢,老师这么长时间,讲学。让我对jvm有所了解。还需要对jvm深入开展。

    作者回复: 多谢支持!

    2018-12-03
    1
  • Solomon
    👍
    2018-12-01
    1
  • 小美
    在attach java agent的时候遇到99线升高的性能问题。有的资料上说class redefinition会阻塞线程,请问老师能详细讲解下吗?
    2018-11-19
    1
  • 对方正在输入
    感谢老师带来的干货,非常感谢

    作者回复: 谢谢支持!

    2018-11-19
    1
  • JackLei
    学完了,由衷的对老师说声谢谢!
    2018-11-01
    1
  • 钟狼
    已坚持学完,后面还需多来几遍,感谢老师的专栏,辛苦了!

    作者回复: 多谢支持!

    2018-10-29
    1
  • 明山
    老师讲的太赞了
    2018-10-22
    1
  • 笑看风云
    动态语言像groovy,代码优化与java有哪些区别呢?

    作者回复: Groovy也是被编译为Java bytecode,所以在即时编译器看来是没有区别的。

    不过,Groovy的编译器生成的bytecode模式可能和javac生成的不一样,如果是这样的话那需要调整inliner的配置。

    2018-10-19
    1
  • 陈浩
    这是我读过最硬核的技术专栏,感谢

    作者回复: 多谢支持!

    2018-10-18
    1
  • Geek_7402d9
    感谢老师!
    2018-10-18
    1
  • jony
    多谢
    2018-10-17
    1
  • 夜行观星
    感谢老师的辛苦付出。收获很大

    作者回复: 多谢支持!

    2018-10-17
    1
  • tiny
    谢谢老师的付出,专题很值得收藏,定期拿出一章啃下😂

    作者回复: 可以在今后遇到实际问题时回来翻阅,提问题

    2018-10-15
    1
  • 爪哇夜未眠
    郑老师的文章很精彩,不过确实需要比较深的基础知识,需要多学习几遍。
    感谢郑老师的传道授业解惑!

    作者回复: 多谢支持!确实假设了读者有一定的基础知识。可以和其他资料参照着看。

    2018-10-15
    1
  • 阿武
    感谢作者这么细心的专栏,虽然我因为技术资历较浅,还没研习虚拟机。但看了前几篇文章,感觉作者很用心,等算法和Java开发能力上升后,一定好好研习大大的文章。:-)

    作者回复: 多谢支持!

    2018-10-15
    1
收起评论
48
返回
顶部