1. 计算机存储系统金字塔模型
在一定程度上,JVM在软件层面仿真出来了计算机的硬件部分,包括寄存器,CPU等,所以在了解JVM之前重温一下计算机存储系统的金字塔模型:
2. JDK/JRE/JVM之间的关系
老生常谈的东西,包含关系上是:
- JDK 包含 JRE 和 javac,jar,debugging tools, javap
- JRE 包含 JVM 和 java, javaw, libraries, rt.jar
- JVM 包含 JIT (Just In Time Compiler)
3. JVM运行原理
JVM的工作原理,层次结构以及GC原理
上面链接中基本讲好了3和4中要讲的东西,很重要!!!。有点扩展的概念这里说一下:
继承 vs. 组合
类继承允许我们根据自己的实现来覆盖重写父类的实现细节,父类的实现对于子类是可见的,所以我们一般称之为白盒复用。
组合(对象持有)要求建立一个号的接口,但是整体类和部分类之间不会去关心各自的实现细节,即它们之间的实现细节是不可见的,故成为黑盒复用。
- 更多参考:
面向对象之继承和组合浅谈
4. GC原理
如果系统学习与了解可以参考:
博客 深入理解java虚拟机;
书籍:《深入理解java虚拟机》