摘要: JVM技术每周分享 · 第1期 JVM技术每周分享整理了JVM技术交流群每周讨论的内容,由群内成员整理归纳而成。如果你有兴趣入群讨论,请关注「Java技术精选」公众号,通过右下角菜单「入群交流」加我好友,获取入群详情。 SafePoint safePoint是代码的特殊位置.发生GC时,jvm要判断阅读全文
posted @ 2018-11-19 10:14 陈树义 阅读(54) 评论(0) 编辑
摘要: 一周回顾:总结、梳理这一周所学的知识,将其整理到自己的知识体系中。 杂文 关于任正非与索尼CEO的对话,感觉很不错,但是还没认真看完。 "任正非对话索尼CEO:直到2006年,我才真正抛弃自杀的念头" 邀请几十年来民营企业的代表人物:腾讯马化腾、娃哈哈宗庆后、TCL 李东生,以及另外两位。通过这个节阅读全文
posted @ 2018-11-18 21:26 陈树义 阅读(9) 评论(0) 编辑
摘要: 看到这里,我相信大家对于一个 Java 源文件是如何变成字节码文件,以及字节码文件的含义已经非常清楚了。那么接下来就是让 Java 虚拟机运行字节码文件,从而得出我们最终想要的结果了。在这个过程中,Java 虚拟机会加载字节码文件,将其存入 Java 虚拟机的内存空间中,之后进行一系列的初始化动作,阅读全文
posted @ 2018-11-16 10:50 陈树义 阅读(231) 评论(0) 编辑
摘要: 温馨提示:此篇文章长达两万字,图片50多张,内容非常多,建议收藏后再看。 前面我们说到 Java 虚拟机使用字节码实现了跨平台的愿景,无论什么系统,我们都可以使用 Java 虚拟机解释执行字节码文件。但其实字节码是有一套规范的,而规定字节码格式的就是《Java 虚拟机规范》。 《Java 虚拟机规范阅读全文
posted @ 2018-11-12 10:01 陈树义 阅读(236) 评论(2) 编辑
摘要: 在上篇文章我们聊到,无论什么语言写的代码,其到最后都是通过机器码运行的,无一例外。那么对于 Java 语言来说,其从源代码到机器码,这中间到底发生了什么呢?这就是今天我们要聊的。 如下图所示,编译器可以分为: 前端编译器、JIT 编译器和AOT编译器 。下面我们逐个讲解。 前端编译器:源代码到字节码阅读全文
posted @ 2018-11-10 10:13 陈树义 阅读(224) 评论(0) 编辑
摘要: 我们都知道在 Windows 系统上一个软件包装包是 exe 后缀的,而这个软件包在苹果的 Mac OSX 系统上是无法安装的。类似地,Mac OSX 系统上软件安装包则是 dmg 后缀,同样无法在 Windows 系统上安装。 为什么不同系统上的软件无法安装,这是因为操作系统底层的实现是不一样的。阅读全文
posted @ 2018-11-09 08:58 陈树义 阅读(365) 评论(0) 编辑
摘要: 说起 Java 虚拟机,许多人就会将其与 HotSpot 虚拟机等同看待。但实际上 Java 虚拟机除了 HotSpot 之外,还有 Sun Classic VM、Exact VM、BEA JRocketit、IBM J9 等等。今天我们就来简单回顾下 Java 虚拟机的发展历史。 虚拟机始祖:Su阅读全文
posted @ 2018-11-08 11:32 陈树义 阅读(288) 评论(1) 编辑
摘要: Java 语言是一门存在了 20 多年的语言,其年纪比我自己还大。虽然存在了这么长时间,但 Java 至今都是最大的工业级语言,许多大型互联网公司均采用 Java 来实现其业务系统。大到国际电商巨头阿里巴巴,小到无名小公司,我们均可看到 Java 的身影。 我是 2010 年开始接触 Java 语言阅读全文
posted @ 2018-11-07 09:14 陈树义 阅读(413) 评论(0) 编辑
摘要: JVM是深入理解语言的基础,也是排查线上问题的基础。阅读全文
posted @ 2018-11-06 08:21 陈树义 阅读(1007) 评论(9) 编辑
摘要: 2018年就快过去了,趁着这个机会整理今年写下的一些文章。也可以让新来的朋友有个索引,方便查看。 Java基础 "注解的那些事儿(三)| 注解的使用" "注解的那些事儿(二)| 如何自定义注解" "注解的那些事儿(一)| 为什么要使用注解?" "大白话说Java反射:入门、使用、原理" "大白话说J阅读全文
posted @ 2018-11-01 09:53 陈树义 阅读(180) 评论(1) 编辑
博聚网