【JVM】了解JVM规范中的虚拟机结构

目录

JVM规范的主要内容

1)字节码指令集(相当于中央处理器CPU)

JVM指令分类

2)Class文件的格式

3)数据类型和值

4)运行时数据区

5)栈帧

6)特殊方法

7)类库


JVM规范的主要内容

1)字节码指令集(相当于中央处理器CPU)

Java虚拟机的指令由一个字节长度的、代表着某种特定操作含义的操作码 (opcode)以及跟随其后的零至多个代表此操作所需参数的操作数(operand)所构成。虚拟机中许多指令并不包含操作数,只有一个操作码。

操作码一列中的T就跟泛型一样,虚拟机根据不同的数据类型会把T替换掉,提供不同的指令。

JVM指令分类

1、加载和存储指令 2、算术指令 3、类型转换指令 4.操作数栈管理指令 5.控制转移指令 6.方法调用和返回指令

2)Class文件的格式

3)数据类型和值

4)运行时数据区

5)栈帧

6)特殊方法

1、<init>:实例初始化方法,通过JVM的invokespecial指令来调用。

2、<clinit>:类或接口的初始化方法,不包含参数,返回void。

7)类库

Java虚拟机必须要对一些Java类库提供支持,否则这些类库根本无法实现,比如下面这些:

1、反射 2、加载或创建类或接口,如ClassLoader 3、连接和初始化类和接口的类 4、安全,如security 5、多线程 6、弱引用 7、异常 8、虚拟机的启动、加载、链接和初始化

相关推荐
Dicky-_-zhang1 小时前
消息队列Kafka/RocketMQ选型与高可用架构:从单体到100万TPS的演进
java·jvm
2301_781571421 小时前
Golang格式化输出占位符都有什么_Golang fmt占位符教程【通俗】
jvm·数据库·python
Dicky-_-zhang5 小时前
容器编排实战:Docker与Kubernetes对比选型与落地实践
java·jvm
XiYang-DING5 小时前
【Java SE】JVM
java·开发语言·jvm
m0_470857645 小时前
PHP怎么实现工厂模式_Factory模式编写指南【指南】
jvm·数据库·python
Dicky-_-zhang6 小时前
日志管理实战:ELK与Loki对比选型与落地实践
java·jvm
小王C语言6 小时前
【线程概念与控制】:线程封装
jvm·c++·算法
江南十四行7 小时前
并发编程(一)
java·jvm·算法
2301_783848657 小时前
mysql数据库迁移到云平台流程_使用数据传输服务DTS工具
jvm·数据库·python
Dicky-_-zhang7 小时前
自动化运维实战:监控告警与自动化运维的完整方案
java·jvm