JVM:栈上的数据存储

文章目录

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

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

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

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

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

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

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

相关推荐
半聋半瞎1 小时前
【JVM操作字节码文件流程详解】
java·jvm·面试
54ping10 小时前
万字记录:信创上云,国产系统Kylin 压测容器重启,接口响应耗时过长问题排查(openjdk17)
jvm
2501_9411115116 小时前
高级爬虫技巧:处理JavaScript渲染(Selenium)
jvm·数据库·python
codergjw16 小时前
【P0】JVM面试篇
jvm·测试工具·面试
普通网友21 小时前
使用Flask快速搭建轻量级Web应用
jvm·数据库·python
普通网友21 小时前
Python函数定义与调用:编写可重用代码的基石
jvm·数据库·python
普通网友1 天前
使用Python进行PDF文件的处理与操作
jvm·数据库·python
普通网友1 天前
编写一个Python脚本自动下载壁纸
jvm·数据库·python
oioihoii1 天前
现代C++:一场静默的革命,告别“C with Classes”
c语言·jvm·c++
普通网友1 天前
用Python批量处理Excel和CSV文件
jvm·数据库·python