当前位置: 首页 > news >正文

龙海市城乡建设局网站南京网站设计优化公司

龙海市城乡建设局网站,南京网站设计优化公司,电视直播网站建设,导购 网站模板一、java中的内存结构如何划分 栈和堆的区别: 栈负责处理运行,堆负债处理存储。 区域名称作用虚拟机栈用于存储正在执行的每个Java方法,以及其方法的局部变量表等。局部变量表存放了便器可知长度的各种基本数据类型,对象引用&am…

一、java中的内存结构如何划分

栈和堆的区别:

栈负责处理运行,堆负债处理存储。
image.png

区域名称作用
虚拟机栈用于存储正在执行的每个Java方法,以及其方法的局部变量表等。局部变量表存放了便器可知长度的各种基本数据类型,对象引用,方法执行完,自动释放
堆内存存储对象(包括数组对象),new来创建的,都存储在堆空间
方法区存储已被虚拟机加载的类信息,常量,(静态变量)、即时编译器编译后的代码等数据
本地方法栈当程序中调用了native的本地方法,底层C的库时,本地方法执行期间的内存区域
程序计数器程序计数器是CPU中的寄存器,它包含每个线程下一条要执行的指令的地址

****例1:**
1、左边int[]声明的变量**arr**是放在**虚拟机栈**
2、右侧new出来的数组内容是放在**堆内存**

class TestJvm {public static void main(String[] args) {//左边声明的局部变量arr,是放在虚拟机栈,右边new出来的内容放在堆空间int[] arr = new int[]{1,2,3};}
}

举例2:
1、在虚拟机栈创建一个int类型的数组arr1,并在内存堆中创建长度为4的空间,初始值都为0。arr1指向堆空间的首地址0x12ab
2、数组arr1在内存堆中,将索引为0的元素设置为1,索引为1的元素设置为2。
3、在虚拟机栈创建一个String类型的数组arr2,并在内存堆中创建长度为2的空间,初始值都为null。arr2指向堆空间的首地址0xaabb
4、数组arr2在内存堆中,将索引为1的元素设置为test,这里test的值其实存在字符串常量池中
5、再在内存对中创建长度为3的内存空间,将首地址赋值给arr2;此时指向堆空间的首地址时0x12cd,同时GC会自动回收老的内存堆的内容。

class TestArrayJvm {public static void main(String[] args) {int[] arr1 = new int[4];arr1[0] = 1;arr2[1] = 2;String[] arr2 = new String[2];arr2[1] = "test";//重新开辟堆空间将字符串数组赋值给arr2arr2 = new String[3];}
}

一维数组内存解析.png

详细教程来源:https://zhuanlan.zhihu.com/p/576119507

http://www.yayakq.cn/news/363649/

相关文章:

  • 网站建设哪家更专业wordpress开发sns
  • 论网站建设技术的作者是谁物流托运
  • 哪个网站虚拟主机好北京优化网站
  • 做产品网站要备案吗长沙电商运营培训
  • 建设工程教育网建设工程类的考试辅导网站视频直播网站建设费用
  • 做网站论文网站托管好吗
  • 网站建设的系统设计株洲网站建设技术公司
  • 单页网站建站wordpress 吾爱破解
  • 两学一做电脑答题网站个人网站如何进行网络推广
  • 微信网站制作公司哪家好舟山网站开发
  • 辽宁建设资质申报网站温州专业微网站制作多少钱
  • 上海网站开发建设电话休闲食品网站建设规划书
  • 博客和网站有什么不同在线网站分析工具
  • 容桂网站制作动态网站建设哪家有名
  • 建行官方网站多少钱合肥做网站设计
  • 设计网站遇到的问题wordpress写主题
  • 免费响应式企业网站源码wordpress返利主题
  • 单页淘宝客网站2014年行吗c 做网站实例
  • 做网站最好的工具wordpress文章样式
  • 多个域名绑定同一网站吗简述seo和sem的区别
  • 个人主机做网站上杭网站建设公司
  • 淮南定制网站建设公司网站如何设置微信支付功能
  • 物流网站过年wordpress主机
  • 需要做个网站电子商务网站建设与维护期末
  • 做第三方seo优化网站怎么样更好的做网站
  • 佛山网站建设哪家专业网站建设活动方案
  • 河南高端网站公司网站建设找哪家
  • 个人网站设计模板行业网站开发运营方案
  • 哪家微网站建设公司网站建设整体架构
  • 外贸平台免费网站网站seo策划方案