学习JVM

java虚拟机

流程:helloworld.java ----(javac编译)----helloworld.class -------(java运行)------JVM ------机器码

JVM功能

*解释和运行

*内存管理

*即时编译(跨平台-慢一点)jit

(反复用到的代码 解释保存再内存里面)

jvm主要组成:

*类加载器,

*运行时数据区(jvm管理的内存),

*执行引擎(即时编译器,解释器,垃圾回收器)

字节码文件组成

工具 :notepad++是不可以的 工具用 jclasslib

组成:基本信息,常量池,字段,方法,属性

基本信息

1, magic(魔数):确认是字节码文件(前缀固定0xcofe base)

2,主版本号 : (-44就等于jdk)-可以确定运行jdk和编译的版本是否一致

常量池 避免重复内容的重复定义,浪费空间

*常量池的数据都有一个编号

*字节码指令中提高编号引用常量池的过"符合引用"
方法

相关推荐
dyyx1111 小时前
如何从Python初学者进阶为专家?
jvm·数据库·python
嗯嗯=1 小时前
STM32单片机学习篇9
stm32·单片机·学习
尽兴-1 小时前
JVM垃圾收集器深度解析:G1与ZGC
jvm·gc·zgc·g1·垃圾收集器java
qingwufeiyang_5301 小时前
JVM调优实战
jvm
ooo-p2 小时前
FPGA学习篇——Verilog学习之“呼吸灯”
学习·fpga开发
求真求知的糖葫芦2 小时前
微波工程4.2节阻抗与导纳矩阵学习(自用)
笔记·学习·线性代数·矩阵·射频工程
炽烈小老头3 小时前
【 每天学习一点算法 2026/01/26】缺失数字
学习·算法
子夜江寒4 小时前
OpenCV 学习:图像拼接与答题卡识别的实现
python·opencv·学习·计算机视觉
wdfk_prog4 小时前
[Linux]学习笔记系列 -- [drivers][base]platform
linux·笔记·学习
u0109272715 小时前
持续集成/持续部署(CI/CD) for Python
jvm·数据库·python