JVM:栈上的数据存储

文章目录

一、Java虚拟机中的基本数据类型

在Java中有8大基本数据类型:

这里的内存占用,指的是堆上或者数组中内存分配的空间大小,栈上的实现更加复杂。

Java中的8大数据类型在虚拟机中的实现:

boolean、byte、char、short在栈上是不是存在空间的浪费?

存在空间的浪费。Java虚拟机采用的是空间换时间方案,在栈上不存储具体的类型,只根据slot槽进行数据处理,浪费了一些内存空间但是避免不同数据类型不同处理方式带来的时间开销。

同时,像long型在64位系统中占用2个slot,使用了16字节空间,但实际上在Hotspot虚拟机中,它的高8个字节没有使用,这样就满足了long型使用8个字节的需要。

相关推荐
懒惰蜗牛5 小时前
Day66 | 深入理解Java反射前,先搞清楚类加载机制
java·开发语言·jvm·链接·类加载机制·初始化
额呃呃5 小时前
信号量唤醒线程的实际机制
java·开发语言·jvm
bjxiaxueliang6 小时前
一文详解Cpp多线程编程:从传统pthread到现代thread实践指南
java·开发语言·jvm
开心比对错重要8 小时前
进程、线程、虚拟线程详解及线程个数设置
java·jvm·算法·面试
Selegant12 小时前
百万 QPS 下的 Java 服务调优:JVM 参数、GC 策略与异步非阻塞编程
java·开发语言·jvm
消失的旧时光-194313 小时前
从 JVM 到 Linux:一次真正的系统级理解
android·linux·jvm
五阿哥永琪13 小时前
JVM 的内存区域是如何划分的?
jvm
没有bug.的程序员13 小时前
Sentinel 流控原理深度解析:从SlotChain到热点参数限流的设计哲学
jvm·微服务·云原生·eureka·sentinel·服务发现
程序员zgh1 天前
C语言 指针用法与区别(指针常量、常量指针、指针函数、函数指针、二级指针)
c语言·开发语言·jvm·c++
没有bug.的程序员1 天前
熔断、降级、限流:高可用架构的三道防线
java·网络·jvm·微服务·架构·熔断·服务注册