走进JVM
文章平均质量分 96
JVM基础知识
绣花针
心有猛虎,细嗅蔷薇
展开
-
JVM之字节码
目录一、引言二、二进制字节码与操作码助记符三、字节码主要指令1.加载或存储指令2.运算指令3.类型转换指令4.对象创建和访问指令5.操作栈管理指令6.方法调用与返回指令7.同步指令四、源码转字节码过程1.词法解析2.语法解析3.语义分析五、字节码执行过程一、引言0 与 1 是计算机仅能识别的信号 , 经过 0 与 1 的不同组合产...原创 2019-03-25 21:41:14 · 1770 阅读 · 1 评论 -
JVM之对象实例化
目录一、引言二、从字节码角度分析1.NEW2.DUP3.INVOKESPECIAL三、从执行步骤角度分析1.确认类元信息是否存在2.分配对象内存3.设定默认值4.设置对象头5.执行 init 方法一、引言Java 是面向对象的静态强类型语言,声明并创建对象的代码很常见,根据某个类声明一个引用变量指向被创建的对象,并使用此引用变量操作该对象。在实...原创 2019-03-30 14:47:11 · 224 阅读 · 0 评论 -
JVM之垃圾回收
目录一、引言二、垃圾回收对象标准三、垃圾回收算法1.标记-清除算法(Mark-Sweep)2.标记-整理算法(Mark-Compact)3.标记-拷贝算法(Mark-Copy)四、垃圾回收器1.Serial回收器2.CMS回收器3.G1回收器一、引言Java 会对内存进行自动分配与回收管理,使上层业务更加安全,方便地使用内存实现程序逻辑。在不同的 J...原创 2019-03-30 16:33:07 · 260 阅读 · 0 评论 -
JVM之类加载过程
目录一、引言二、类加载过程1.Load2.Link3.Init三、案例1.第1处说明(new关键字与newInstance()方法区别)2.第 2 处说明(使用类似的方式可获取其他声明如注解、方法等)3.第 3 处说明(private 成员在类外依然可以修改)四、类加载器结构1.最高层Bootstrap2.第二层Platform ClassLoad...原创 2019-03-28 08:33:41 · 716 阅读 · 0 评论 -
JVM之内存布局
目录一、引言二、经典JVM内存布局1.Heap(堆区)2.Metaspace(元空间)3.JVM Stack(虚拟机栈)4.Native Method Stacks(本地方法栈)5.Program Counter Register(程序计数寄存器)三、线程共享角度的内存结构一、引言内存是非常重要的系统资源,是硬盘和 CPU 的中间仓库及桥梁,承载着操作系统和...原创 2019-03-29 09:17:40 · 356 阅读 · 1 评论