基本数据类型与引用类型在存储上的区别

基本数据类型和引用数据类型在存储上的区别

基本数据类型有哪些

类型名称 关键字 占用内存 取值范围
字节型 byte 1 字节 -128~127
短整型 short 2 字节 -32768~32767
整型 int 4 字节 -2147483648~2147483647
长整型 long 8 字节 -9223372036854775808L~9223372036854775807L
单精度浮点型 float 4 字节 +/-3.4E+38F(6~7 个有效位)
双精度浮点型 double 8 字节 +/-1.8E+308 (15 个有效位)
字符型 char 2 字节 ISO 单一字符集
布尔型 boolean 1 字节 true 或 false

引用数据类型有哪些

可以说,除了上面八种数据类型之外基本都是引用数据类型,包括String,自定义类等

存储结构的区别

基本数据类型的变量空间存储在栈当中,并且栈是直接存储着变量的值(空间大小固定)

引用数据变量的变量空间也存储在栈当中,但是栈当中存储的是引用地址,地址指向在堆中开辟的可变空间

可以说,

基本数据变量和引用数据变量的左边声明部分都是存储在栈当中,只不过一个存储的是值,一个存储的是地址。而引用数据类型的右边部分即new的部分是在堆当中。

热门相关:斗神战帝   修仙界最后的单纯   法医娇宠,扑倒傲娇王爷   最强反套路系统   朕是红颜祸水