学习JVM

java虚拟机

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

JVM功能

*解释和运行

*内存管理

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

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

jvm主要组成:

*类加载器,

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

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

字节码文件组成

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

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

基本信息

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

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

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

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

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

相关推荐
wanping1582599234132 分钟前
AI Agent(学习六-FAISS 持久化到磁盘(重启不丢记忆))
人工智能·学习·faiss
知识分享小能手40 分钟前
SQL Server 2019入门学习教程,从入门到精通,SQL Server 2019数据库的操作(2)
数据库·学习·sqlserver
鄭郑1 小时前
STM32学习笔记--I2C封装与OLED(2026.2.1)
笔记·stm32·学习
酒鼎3 小时前
学习笔记(4)HTML5新特性(第3章)- WebSocket
笔记·学习·html5
-Springer-3 小时前
STM32 学习 —— 个人学习笔记2-2(新建工程)
笔记·stm32·学习
tb_first3 小时前
万字超详细苍穹外卖学习笔记4
java·spring boot·笔记·学习·spring·mybatis
m0_706653234 小时前
用Python批量处理Excel和CSV文件
jvm·数据库·python
代码游侠4 小时前
学习笔记——Linux字符设备驱动开发
linux·arm开发·驱动开发·单片机·嵌入式硬件·学习·算法
charlie1145141914 小时前
嵌入式C++教程——ETL(Embedded Template Library)
开发语言·c++·笔记·学习·嵌入式·etl
李小星同志5 小时前
VID2WORLD: CRAFTING VIDEO DIFFUSION MODELSTO INTERACTIVE WORLD MODELS论文学习
学习