1 JVM的优点
- 使得java代码一次编译,处处运行
- 自动内存管理
- 自动垃圾回收
2 在整个计算机的位置
运行在操作系统之上,并没有与硬件直接接触
3 JDK、JRE、JVM的架构
4 java代码执行流程
出现了两个编译器
- 第一次:java源代码编译成按照jvm规范的字节码文件
- 第二次:因为操作系统不认识字节码,只认识二进制,所以需要jit编译成机器语言
5 JVM的架构模型
jvm采用的栈式架构,其相比寄存器模式有一定的优势和弊端
a. 优点
- 零地址的方式,栈每次只处理栈顶的数据,不需要考虑地址的存储
- 不需要硬件支持,可移植性好,更容易实现跨平台
b. 缺点
- 基于寄存器架构的指令相对较少
- 执行性能比寄存器架构差
6 字节码文件反编译
编译生成字节码文件xxx.class
javap -v xxx.class