Java虚拟机中的数据类型

与Java类似,Java虚拟机中的数据类型也分为基本数据类型引用类型,相应的,也存在原始类型引用类型

原始类型与值

整型

  1. byte:8位有符号二进制补码,默认为0
  2. short:16位有符号二进制补码,默认为0
  3. int:32位有符号二进制补码,默认为0
  4. long:64位有符号二进制补码,默认位0
  5. char:16位无符号整数,指向BMP的Unicode码点,以UTF-16编码,默认值是Unicode的null码点('\u0000')

浮点类型

  1. float:单精度浮点数,默认为正数0
  2. double:双精度浮点,默认为正数0

boolean
值为true或false,默认为false
在Java虚拟机中没有提供boolean值专用的字节码指令,Java语言表达式所操作的boolean值,在编译后都会使用Java虚拟机中的int数据类型来代替.
Java虚拟机支持boolean类型的数组,boolean类型数组的访问和修改共用byte类型数组的baloadbastore指令

returnAddress
指向某个操作码(opcode)的指针,此操作码与Java虚拟机指令相对应.在Java虚拟机支持的基本数据类型中,只有returnAddress是无法与Java语言的数据类型对应

引用类型与值

Java虚拟机中有三种引用类型:

  1. 类类型
  2. 引用类型
  3. 接口类型
    这些引用类型分别指向某个动态创建的类实例,数组实例和实现了某个接口的类实例或者数组实例.

int[][][]这种类型,我们可以把int[][]理解成为一个组件类型,而int[]同样也可以成为int[][]的组件类型,这样不断找下去,知道找到一个不是数组的组件类型(int),我们就把int称为元素类型

猜你喜欢

转载自www.cnblogs.com/sonnsei/p/12501845.html