JAVA虚拟机规范读书笔记--class文件结构及数据类型

时间:2022-12-26 18:05:35

1. class文件 文件格式

.class 文件是代码通过虚拟机编译后产生的一种不依赖与平台以及硬件的二进制文件。

2. 数据类型

java虚拟机操作的数据类型分为两类,原始数据类型和引用类型。
原始数据:
byte:8位有符号的二进制补码整数 默认 0
short:16位有符号的二进制补码整数 默认 0
byte:32位有符号的二进制补码整数 默认 0
byte:64位有符号的二进制补码整数 默认 0
char:值为16位无符号整数,采用Unicode码点,使用UTF-16编码 默认值为 Unicode的null码点(‘\u0000’)
float:单精度浮点数集合中的元素 默认值为0
double:双精度浮点数集合中的元素 默认值为0
boolean:java虚拟机没有对boolean提供指定的字节码指令,编译后用int数据类型代替,true代表1 false代表0
注:java虚拟机规范中提到,如果boolean作为数组时,java虚拟机会把boolean数组转化为byte数组(占8位)

引用类型:
java虚拟机中有三种引用类型:类类型,数组类型,接口类型 默认为 null