学习JVM

java虚拟机

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

JVM功能

*解释和运行

*内存管理

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

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

jvm主要组成:

*类加载器,

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

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

字节码文件组成

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

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

基本信息

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

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

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

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

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

相关推荐
碎叶城李白2 小时前
若依学习笔记1-validated
java·笔记·学习·validated
im_AMBER2 小时前
学习日志05 python
python·学习
真的想上岸啊3 小时前
学习C++、QT---18(C++ 记事本项目的stylesheet)
开发语言·c++·学习
rui锐rui4 小时前
大数据学习2:HIve
大数据·hive·学习
凛铄linshuo5 小时前
爬虫简单实操2——以贴吧为例爬取“某吧”前10页的网页代码
爬虫·python·学习
大春儿的试验田5 小时前
高并发收藏功能设计:Redis异步同步与定时补偿机制详解
java·数据库·redis·学习·缓存
金色光环6 小时前
【Modbus学习笔记】stm32实现Modbus
笔记·stm32·学习
THMOM917 小时前
TinyWebserver学习(9)-HTTP
网络协议·学习·http
凌辰揽月7 小时前
Servlet学习
hive·学习·servlet
魔芋红茶8 小时前
spring-initializer
python·学习·spring