.1.1 程序计数器内存空间小,线程私有。字节码解释器工作是就是通过改变这个计数器的值来选取下一条需要执行指令的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖计数器完成

如果线程正在执行一个 Java 方法,这个计数器记录的是正在执行的虚拟机字节码指令的地址;如果正在执行的是 Native 方法,这个计数器的值则为 (Undefined)。此内存区域是唯一一个在 Java 虚拟机规范中没有规定任何 OutOfMemoryError 情况的区域。

1.1.2 Java 虚拟机栈线程私有,生命周期和线程一致。描述的是 Java 方法执行的内存模型:每个方法在执行时都会床创建一个栈帧(Stack Frame)用于存储局部变量表、操作数栈、动态链接、方法出口等信息。每一个方法从调用直至执行结束,就对应着一个栈帧从虚拟机栈中入栈到出栈的过程。

局部变量表:存放了编译期可知的各种基本类型(boolean、byte、char、short、int、float、long、double)、对象引用(reference 类型)和 returnAddress 类型(指向了一条字节码指令的地址)

StackOverflowError:线程请求的栈深度大于虚拟机所允许的深度。

OutOfMemoryError:如果虚拟机栈可以动态扩展,而扩展时无法申请到足够的内存。

1.1.3 本地方法栈区别于 Java 虚拟机栈的是,Java 虚拟机栈为虚拟机执行 Java 方法(也就是字节码)服务,而本地方法栈则为虚拟机使用到的 Native 方法服务。也会有 StackOverflowError 和 OutOfMemoryError 异常。

1.1.4 Java 堆对于绝大多数应用来说,这块区域是 JVM 所管理的内存中最大的一块。线程共享,主要是存放对象实例和数组。内部会划分出多个线程私有的分配缓冲区(Thread Local Allocation Buffer, TLAB)。可以位于物理上不连续的空间,但是逻辑上要连续。

OutOfMemoryError:如果堆中没有内存完成实例分配,并且堆也无法再扩展时,抛出该异常。

1.1.5 方法区属于共享内存区域,存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。

现在用一张图来介绍每个区域存储的内容。

博学谷 java_博学谷javaee在线就业班2020相关推荐

  1. 博学谷java百度网盘_博学谷javaee在线就业班2020网盘

    一:为什么要学多线程 应付面试 :多线程几乎是面试中必问的题,所以掌握一定的基础知识是必须的. 了解并发编程:实际工作中很少写多线程的代码,这部分代码一般都被人封装起来了,在业务中使用多线程的机会也不 ...

  2. unity3D-游戏/AR/VR在线就业班 C#入门访问修饰符学习笔记

    unity3D-游戏/AR/VR在线就业班 C#入门访问修饰符学习笔记 点击观看视频学习:http://edu.csdn.NET/lecturer/107 访问修饰符 public --公共的,在哪里 ...

  3. 传智播客超级设计师在线就业班招生啦

    好消息!即日起传智播客超级设计师在线就业班开始招生啦! 仅需2个月,让你成为名符其实的超级设计师!平面设计.电商设计.UI设计技能--样样拿得出手!你愿不愿意? 不再受地点.课堂的限制,充分利用自己的 ...

  4. 博学谷java百度网盘_博学谷javaee就业班2020百度云

    线程在面试中已经是常客了,也是我们必备的知识点,关于线程,问的最多的便是线程是什么?为什么使用多线程?多线程的示例以及解决方案?线程池是什么? 一.线程是什么? Thread类中有这样的明确定义:线程 ...

  5. 七月就业班强势来袭~

    "金三银四"招聘旺季, 七月在线就业班开始招生啦!!! 保就业,保高薪,先就业,后付费 CV就业班课程链接: http://www.julyedu.com/Employment/g ...

  6. 成都传智播客就业班简介

    成都JAVA培训,传智播客javaEE+3G就业班即将开班.名额仅剩5名,开班时间为:10月12日 想学好java又同时学好3G 的童鞋,报名从速呀. 软件学习方法非常重要,软件编程是一门科学技术,不 ...

  7. 60-硅谷课堂6-硅谷课堂-公众号消息和微信授权-- 笔记

    60-硅谷课堂6-硅谷课堂-公众号消息和微信授权-- 笔记 笔记内容来源与尚硅谷教学视频 文章目录 60-硅谷课堂6-硅谷课堂-公众号消息和微信授权-- 笔记 笔记中涉及资源: 一.公众号普通消息 ① ...

  8. 即时通讯源码-即时通讯集群服务免费-通讯百万并发技术-Openfire 的安装配置教程手册-哇谷即时通讯集群方案-哇谷云-哇谷即时通讯源码

    即时通讯源码-即时通讯集群服务免费-通讯百万并发技术-Openfire 的安装配置教程手册-哇谷即时通讯集群方案-哇谷云 1,openfire开发环境配置 很久没有写点东西了.最近很烦心,领导不给力. ...

  9. 2017最新整理传智播客JavaEE第49期 基础就业班

    2017最新整理传智播客JavaEE第49期 基础就业班 可以说是一套不可多的的教程,有条件的同学建议报名培训,效果更佳,没有条件的朋友就买个培训课堂上录制的视频吧. 视频教程推送门:http://b ...

最新文章

  1. 5 个关于 API 中日期和时间设计规则
  2. 从内核文件系统看文件读写过程
  3. 管理员以标准权限运行时
  4. 【学习笔记】JAVA基础——异常处理部分
  5. 2015-11-16
  6. 自己制作机器学习训练和测试使用的二进制数据集(C++)
  7. 2022-2027年中国苹果树种植行业市场全景评估及发展战略规划报告
  8. 衣带渐宽终不悔,为伊消得人憔悴。
  9. Python 在问答频道中刷题积累到的小技巧(二)
  10. 如何让 select的那个请选择不被选中.获取选中的value值和html
  11. CodeForces-1138A
  12. jacob实现ppt转图片时存在的问题
  13. Java征兵系统(可拓展)
  14. 渗透测试工程师(NISP-PT)与网络安全运维工程师(NSP-SO)
  15. python读取word图片_python 如何提取 word 内的图片
  16. 1 数据分析业务指标
  17. and true和if都是python语言的保留字_python语言保留字有哪些
  18. 安卓 linux launcher,关于android使用自己的launcher替换默认launcher的方法
  19. 学软件的等于电脑高手?
  20. 图文教程,如何用graphpad prism快速绘制柱状图

热门文章

  1. 【板栗糖GIS】在测绘项目中——比例尺和分辨率的区别
  2. SQL Server之菜鸟入坑学习练习01
  3. 熬夜程序猿的膳食调养
  4. 期货中的正向交易与反向交易
  5. 一些有启发的段子【来自一位弱小的PM】
  6. 六行python代码的爱心曲线_6行python代码的爱心曲线
  7. java基础(部分)
  8. 最近我都干了些什么——反思!!
  9. 2022衢州江山农商银行春季招聘考前冲刺题及答案
  10. 推荐系统(一)基于协同过滤算法开发离线推荐