中国移动 第三代半导体 log4j angularjs swagger 后台管理ui react脚手架搭建 jquery的each循环 jquery获取元素 js字符串排序 android调试工具 matlab区分大小写吗 java二维数组赋值 python界面 python安装程序 java连接mysql java例子 java时间戳转时间 java成员变量 java中random java日期转时间戳 javascript源代码 h5模板 垃圾邮件数据集 redis入门指南 python输入数字 快点蛆虫成就单刷 自制题库答题考试软件 idea重命名快捷键 java核心技术 福昕阅读器绿色版 识别音乐的软件 微信小程序开发实例 ps扭曲变形 电脑代码雨 qt5下载 ps测量长度 python去除空格 ofd文件阅读器 数组对象去重
当前位置: 首页 > 学习教程  > 编程语言

JVM 知识总结

2021/2/13 16:20:15 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

Java内存区域 运行时数据区  Java虚拟机在执行Java程序的过程会把它所管理的内存划分为若干个不同数据区域,包含程序计数器,java虚拟机栈, 本地方法栈,java堆,方法区,运行时常量池 程序计数器  线程私有…

Java内存区域

  1. 运行时数据区
     Java虚拟机在执行Java程序的过程会把它所管理的内存划分为若干个不同数据区域,包含程序计数器,java虚拟机栈, 本地方法栈,java堆,方法区,运行时常量池
    在这里插入图片描述

    1. 程序计数器
       线程私有,它是一块较小的内存空间,可以看做是当前线程所执行的字节码的行号指示器,存储当前所执行到的位置,在线程切换后恢复到正确的执行位置
    2. Java虚拟机栈
       线程私有,每个方法被执行时,Java虚拟机就会同步创建一个栈帧,用户存储局部变量表,操作数栈,动态链接,方法返回地址等信息。每一个方法被调用直至执行完毕的过程,就对应一个栈帧在虚拟机栈从入栈到出栈的过程。
    3. 本地方法栈
       其实就是虚拟机调用的本地服务(Native)。
    4. Java堆
       java堆是所有线程共享的一个内存区域。此区域唯一的目的就是存放对象实例,Java世界里“几乎”所有对象实例都在这里分配内存。
    5. 方法区
       方法区是被各个线程共享的内存区域,它用于存储已经被虚拟机加载的类型信息,常亮,静态变量,即时编译器编译后的代码缓存等数据
      6.运行时常量池
       运行时常量池是方法区的一部分用于存放编译期生成的各种字面量和符号引用。

本文链接: http://www.dtmao.cc/news_show_700012.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?