是线程私有的,每个线程都是自己的栈,每个线程中的每个方法在执行的同时会创建一个栈帧用于存局部变量表、操作数栈、动态链接、方法返回地址等信息。每一个方法从调用到执行完毕的过程,就对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。其中局部变量表,存放基本类型(boolean、byte、char、short、int、float)、对象的引用等等,对象的引用不是对象实例本身,而是指向对象实例的一个指针。

是线程共享的,所有的对象的实例和数组都存放在堆中,任何线程都可以访问。Java的垃圾自动回收机制就是运用这个区域的。

方法区也是线程共享的,用于存放类信息(包括类的名称、方法信息、字段信息)、常量、静态变量以及即时编译器编译后的代码等等。

这么讲比较抽象,写段代码:

当程序执行到箭头指向那一个行代码的时候,入参i和局部变量j都是基本类型,直接存放在栈中。入参str和oneMoreStudy是对象类型,在栈中只存放对象的引用。如下图:

java 堆栈_Java中线程与堆栈的关系相关推荐

  1. java 递归 堆栈_Java中的堆栈安全递归

    java 递归 堆栈 在本文中,摘自< Java中的函数编程 >一书,我解释了如何使用递归,同时避免了StackOverflow异常的风险. Corecursion正在使用第一步的输出作为 ...

  2. java堆栈异常_Java中获得异常堆栈使用轨迹的方法是。

    Java中获得异常堆栈使用轨迹的方法是. 答:fillinStack() 中国大学MOOC: 互联网金融品牌建设能增加客户对企业的依赖度,促使客户重复使用某个企业产品或服务,从而产生一定的客户黏性 答 ...

  3. java for(o t :object) 获取顺序号_java中线程的生命周期

    线程是java中绕不过去的一个话题, 今天本文将会详细讲解java中线程的生命周期,希望可以给大家一些启发. java中Thread的状态 java中Thread有6种状态,分别是: NEW – 新创 ...

  4. java什么时候需要同步_JAVA中线程在什么时候需要同步和互斥

    JAVA中线程在什么时候需要同步和互斥 关注:265  答案:6  mip版 解决时间 2021-01-27 08:10 提问者时光易老 2021-01-27 03:32 JAVA中线程在什么时候需要 ...

  5. java线程等待_java 中线程等待与通知的实现

    java 中线程等待与通知的实现 前言: 关于等待/通知,要记住的关键点是: 必须从同步环境内调用wait().notify().notifyAll()方法.线程不能调用对象上等待或通知的方法,除非它 ...

  6. java中的僵死进程_Java中线程间怎么通讯?什么叫僵死线程?

    <尸家保镖> <猛鬼出千> <不死心灵> <大家发财> <灵幻少女> <九天玄女> <僵尸至尊> <湘西尸王& ...

  7. java中线程池的使用_Java中线程池的简单使用

    什么是线程池? 顾名思义线程池就是线程的容器 举个例子:在没有共享电源的年代,车站有5个人手机都没电且都没有带电源,这五个人想要给手机充电只能去车站的售货亭各花100块钱买一个移动电源:但是现在共享电 ...

  8. java 难度_java中难度大一点的面试题

    1.请大概描述一下Vector和ArrayList的区别,Hashtable和HashMap的区别.(5) (1)Vector和ArrayList的异同 实现原理,功能相同,可以互用 主要区别: Ve ...

  9. [知了堂学习笔记]_Java中线程的学习(一)

    请关注"知了堂学习社区",地址:http://www.zhiliaotang.com/portal.php 线程 1.线程的概念 线程,有时被称为轻量级进程(Lightweight ...

最新文章

  1. 操作系统任务执行和任务切换的基本实现原理
  2. 【SpringMVC 之应用篇】 1_SpringMVC入门 —— 第一个 Spring MVC 程序
  3. 美团搜索中NER技术的探索与实践
  4. 什么时候z检验什么时候t检验?
  5. my Note debug - select one Opportunity from dialog list
  6. 如何创建脱机数据库应用程序思路
  7. 使用MRS CDL实现实时数据同步的极致性能
  8. 福利 | 廖雪峰官方Python教程,拿走不谢!
  9. wxpython wx listctrl_wxPython实现指定单元格可编辑的ListCtrl | 学步园
  10. InnoSetup 如何获取安装程序的路径?
  11. quartus破解!!!!!
  12. java简单的学生管理系统界面_java 学生信息管理系统(图形界面)
  13. Python分词统计
  14. iOS UI 自动化测试原理以及在 Trip.com 的应用实践
  15. php开发路由器界面,PHP制作简单仿路由器登录界面
  16. C++: #define中的三个特殊符号:#,##,#@
  17. python机械臂仿真_使用VTK与Python实现机械臂三维模型可视化
  18. Miktex 安装遇到过的问题
  19. 云服务器测速脚本_Superspeed.sh:包含很多个测速节点的 VPS 一键测速脚本
  20. 计算机保存不了自动还原,win7系统颜色校准无法保存开机自动还原默认的处理步骤...

热门文章

  1. Unity/DotNetty中集成Lidgren实现可靠UDP
  2. IdentityServer4(10)- 添加对外部认证的支持之QQ登录
  3. 活动:北京Xamarin分享会第8期(2017年11月11日)
  4. ASP.NET Core 2.0 自定义 _ViewStart 和 _ViewImports 的目录位置
  5. DDD理论学习系列(4)-- 领域模型
  6. .NET CoreCLR开发人员指南(上)
  7. C#趣味程序---理财高手
  8. Flutter之点击按钮打开百度链接
  9. http和https和ssl和tcp/ip之间的关系和区别
  10. linux c之命名管道简单使用