Java内存划分- - -数组的储存状态
【摘要】
前言: 数组也是一种数据类型,并且数组的具体内容是储存在堆上的。也可以换一种思路:所有变量里的具体内容都是储存在堆上的,栈上不储存具体的数据内容,只是把声明的变量名称存在栈上。具体的值是引用堆上的(这也是...
前言:
数组也是一种数据类型,并且数组的具体内容是储存在堆上的。也可以换一种思路:所有变量里的具体内容都是储存在堆上的,栈上不储存具体的数据内容,只是把声明的变量名称存在栈上。具体的值是引用堆上的(这也是每一门编程语言都要研究的堆栈问题)。
数组在堆栈的示意图
图片右边的三个方块从下往上分别是:
方法区(执行方法必须进栈)
储存.class信息包含方法(具体的方法信息储存在栈里)
栈
进栈:在栈里面给方法开辟一个内存空间,储存变量名称。
堆(通过new 实例化出来的内容都在堆里)
在堆里面给具体的变量开辟一个内存空间,储存具体内容。(数组也是变量)。
地址值:根据地址可以找到具体的内容(也可以赋值)
索引:从0开始,根据索引也可以找到具体的内容。(也可以赋值)
文章来源: kangshihang.blog.csdn.net,作者:康世行,版权归原作者所有,如需转载,请联系作者。
原文链接:kangshihang.blog.csdn.net/article/details/106180216
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)