diff --git a/docs/notes/Java 虚拟机.md b/docs/notes/Java 虚拟机.md index c5720da6..dad5baf0 100644 --- a/docs/notes/Java 虚拟机.md +++ b/docs/notes/Java 虚拟机.md @@ -1,6 +1,7 @@ * [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) * [一、运行时数据区域](#一运行时数据区域) + * [程序计数器](#程序计数器) * [程序计数器](#程序计数器) * [Java 虚拟机栈](#java-虚拟机栈) * [本地方法栈](#本地方法栈) @@ -25,13 +26,44 @@ * [类加载器分类](#类加载器分类) * [双亲委派模型](#双亲委派模型) * [自定义类加载器实现](#自定义类加载器实现) +* [参考资料](#参考资料) + * [本地方法栈](#本地方法栈) + * [堆](#堆) + * [方法区](#方法区) + * [运行时常量池](#运行时常量池) + * [直接内存](#直接内存) +* [二、垃圾收集](#二垃圾收集) + * [判断一个对象是否可被回收](#判断一个对象是否可被回收) + * [引用类型](#引用类型) + * [垃圾收集算法](#垃圾收集算法) + * [垃圾收集器](#垃圾收集器) +* [三、内存分配与回收策略](#三内存分配与回收策略) + * [Minor GC 和 Full GC](#minor-gc-和-full-gc) + * [内存分配策略](#内存分配策略) + * [Full GC 的触发条件](#full-gc-的触发条件) +* [四、类加载机制](#四类加载机制) + * [类的生命周期](#类的生命周期) + * [类加载过程](#类加载过程) + * [类初始化时机](#类初始化时机) + * [类与类加载器](#类与类加载器) + * [类加载器分类](#类加载器分类) + * [双亲委派模型](#双亲委派模型) + * [自定义类加载器实现](#自定义类加载器实现) * [参考资料](#参考资料) # 一、运行时数据区域 -

+

+ +## 程序计数器 + +记录正在执行的虚拟机字节码指令的地址(如果正在执行的是本地方法则为空)。 + +## Java 虚拟机栈# 一、运行时数据区域 + +

## 程序计数器 diff --git a/docs/notes/pics/14ab3de0-0d48-4466-9ea7-90b9be822034_200.png b/docs/notes/pics/14ab3de0-0d48-4466-9ea7-90b9be822034_200.png new file mode 100644 index 00000000..399846e1 Binary files /dev/null and b/docs/notes/pics/14ab3de0-0d48-4466-9ea7-90b9be822034_200.png differ diff --git a/docs/pics/14ab3de0-0d48-4466-9ea7-90b9be822034_200.png b/docs/pics/14ab3de0-0d48-4466-9ea7-90b9be822034_200.png new file mode 100644 index 00000000..399846e1 Binary files /dev/null and b/docs/pics/14ab3de0-0d48-4466-9ea7-90b9be822034_200.png differ