学习JVM

java虚拟机

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

JVM功能

*解释和运行

*内存管理

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

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

jvm主要组成:

*类加载器,

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

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

字节码文件组成

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

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

基本信息

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

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

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

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

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

相关推荐
iconball1 小时前
个人用云计算学习笔记 --37 Zabbix
运维·笔记·学习·云计算·zabbix
FPGAI2 小时前
Java学习之计算机存储规则、数据类型、标识符、键盘录入、IDEA
java·学习
四谎真好看3 小时前
MySQL 学习笔记(运维篇1)
运维·数据库·笔记·学习·mysql·学习笔记
hssfscv3 小时前
Javaweb学习笔记——Web
笔记·学习·web
随意起个昵称3 小时前
【题解学习】序列题
学习·算法
皮卡丘学了没3 小时前
JVM-逃逸分析
jvm
正月十六工作室4 小时前
关键能力 | SMART 原则
学习·关键能力·smart原则
崇山峻岭之间4 小时前
Matlab学习记录16
开发语言·学习·matlab
好奇龙猫4 小时前
【大学院-筆記試験練習:数据库(データベース問題訓練) と 软件工程(ソフトウェア)(3)】
学习
妄汐霜5 小时前
小白学习笔记(MySQL增删改查)
笔记·学习·mysql