|
1 | 1 | * [点击阅读面试进阶指南 ](https://github.com/CyC2018/Backend-Interview-Guide) |
2 | 2 | <!-- GFM-TOC --> |
3 | 3 | * [一、运行时数据区域](#一运行时数据区域) |
| 4 | + * [程序计数器](#程序计数器) |
4 | 5 | * [程序计数器](#程序计数器) |
5 | 6 | * [Java 虚拟机栈](#java-虚拟机栈) |
6 | 7 | * [本地方法栈](#本地方法栈) |
|
25 | 26 | * [类加载器分类](#类加载器分类) |
26 | 27 | * [双亲委派模型](#双亲委派模型) |
27 | 28 | * [自定义类加载器实现](#自定义类加载器实现) |
| 29 | +* [参考资料](#参考资料) |
| 30 | + * [本地方法栈](#本地方法栈) |
| 31 | + * [堆](#堆) |
| 32 | + * [方法区](#方法区) |
| 33 | + * [运行时常量池](#运行时常量池) |
| 34 | + * [直接内存](#直接内存) |
| 35 | +* [二、垃圾收集](#二垃圾收集) |
| 36 | + * [判断一个对象是否可被回收](#判断一个对象是否可被回收) |
| 37 | + * [引用类型](#引用类型) |
| 38 | + * [垃圾收集算法](#垃圾收集算法) |
| 39 | + * [垃圾收集器](#垃圾收集器) |
| 40 | +* [三、内存分配与回收策略](#三内存分配与回收策略) |
| 41 | + * [Minor GC 和 Full GC](#minor-gc-和-full-gc) |
| 42 | + * [内存分配策略](#内存分配策略) |
| 43 | + * [Full GC 的触发条件](#full-gc-的触发条件) |
| 44 | +* [四、类加载机制](#四类加载机制) |
| 45 | + * [类的生命周期](#类的生命周期) |
| 46 | + * [类加载过程](#类加载过程) |
| 47 | + * [类初始化时机](#类初始化时机) |
| 48 | + * [类与类加载器](#类与类加载器) |
| 49 | + * [类加载器分类](#类加载器分类) |
| 50 | + * [双亲委派模型](#双亲委派模型) |
| 51 | + * [自定义类加载器实现](#自定义类加载器实现) |
28 | 52 | * [参考资料](#参考资料) |
29 | 53 | <!-- GFM-TOC --> |
30 | 54 |
|
31 | 55 |
|
32 | 56 | # 一、运行时数据区域 |
33 | 57 |
|
34 | | -<div align="center"> <img src="pics/b01e12b7-6cfc-485b-a03e-a575e6f7b773.jpg"/> </div><br> |
| 58 | +<div align="center"> <img src="pics/14ab3de0-0d48-4466-9ea7-90b9be822034_200.png" width="500px"> </div><br> |
| 59 | + |
| 60 | +## 程序计数器 |
| 61 | + |
| 62 | +记录正在执行的虚拟机字节码指令的地址(如果正在执行的是本地方法则为空)。 |
| 63 | + |
| 64 | +## Java 虚拟机栈# 一、运行时数据区域 |
| 65 | + |
| 66 | +<div align="center"> <img src="pics/14ab3de0-0d48-4466-9ea7-90b9be822034_200.png" width="500px"> </div><br> |
35 | 67 |
|
36 | 68 | ## 程序计数器 |
37 | 69 |
|
|
0 commit comments