学习JVM

java虚拟机

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

JVM功能

*解释和运行

*内存管理

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

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

jvm主要组成:

*类加载器,

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

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

字节码文件组成

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

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

基本信息

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

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

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

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

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

相关推荐
skywalk81631 分钟前
请学习kotti的前端(kotti其实是没有分离的前端的)实现,做到形似kotti那样的前端页面。
前端·学习
red_redemption6 分钟前
自由学习记录(156)
学习
溟有常青木10 分钟前
Jupyter notebook学习容易忘的点
学习·jupyter
大虫刷题10 分钟前
华为认证(HCIP-AI)五大分类,有何区别及学习难度和从事职业方向
人工智能·学习
鱼鳞_1 小时前
Java学习笔记_Day22
java·笔记·学习
AI_零食1 小时前
Flutter 框架跨平台鸿蒙开发 - 鸿蒙麻将游戏应用
学习·flutter·游戏·华为·交互·harmonyos
蒸蒸yyyyzwd2 小时前
检索系统学习笔记
分布式·学习
ZhiqianXia2 小时前
PyTorch学习笔记(6) : torch.autograd
pytorch·笔记·学习
网络工程小王2 小时前
【提示词工程和思维链的讲解】学习笔记
人工智能·笔记·学习
程序员雷欧2 小时前
大模型应用开发学习第五天
学习