三、JVM中的数据类型

一、数据类型
三、JVM中的数据类型_第1张图片
1、jvm是通过某些数据类型来执行计算的,数据类型可以分为两种:基本类型和引用类型。基本类型的变量持有原始值,而引用类型持有应用值。

2、Java语言中的所有类型同样也都是jvm中的基本类型。但是boolean有点特别,虽然jvm也罢Boolean看作基本类型,但是指令集对Boolean只有很有限的支持,当编译器把Java源代码编译为字节码时,它用int或者byte来表示Boolean。在jvm中false是用整数“0”来表示的,所有非零整数都表示为true,涉及Boolean值的操作则会使用int。另外Boolean数组是当做byte数组来访问的,但是在堆区,它也可以表示为位域。

3、jvm还有一个只在内部使用的基本类型:returnAddress,Java程序员不能使用这个类型,这个基本类型被用来实现Java程序中的finally子句。该类型是jsr, ret以及jsr_w指令需要使用到的,它的值是JVM指令的操作码的指针。returnAddress类型不是简单意义上的数值,不属于任何一种基本类型,并且它的值是不能被运行中的程序所更改的。

4、jvm的引用类型被称为“引用(reference)”。有三种引用类型:类类型、接口类型和数组类型。它们的值都是对动态创建对象的引用;数组类型的值是对数组对象的引用,在jvm中,数组是真正的对象;而接口类型的值,则是对实现了该接口的某个实例的引用。还有一种特殊的引用值是null,它表示该引用类型没有引用任何对象。

你可能感兴趣的:(JVM)