JAVA内存结构:堆、栈、方法区;

堆:存放所有 new出来的东西(堆空间是所有线程共享,虚拟机气动的时候建立);栈:存放局部变量(线程创建的时候 被创建);方法区:被虚拟机加载的类信息、常量、静态常量等。

类加载系统:负责从文件系统或者网络加载class信息,加载的信息存放在方法区。   直接内存:JAVAnio库允许JAVA程序直接内存,从而提高性能,通常直接内存性能高于JAVA堆。读写频繁的场合可能会考虑使用。   本地方法栈:本地方法栈和JAVA栈类似,最大的不同为本地方法栈用于本地方法调用。JAVA虚拟机允许JAVA直接调用本地方法。    垃圾回收系统:是JAVA的核心。       pc寄存器:每个线程私有的空间。JAVA虚拟机为每个线程创建pc寄存器,在任意时刻一个JAVA线程总是在执行一个方法,这个方法被称为当前方法,如果当前方法不是本地方法,pc寄存器总会执行当前正在被执行的指令,如果是本地方法,则pc寄存器值为underfined,寄存器存放当前执行执行环境指针、程序技术器、操作栈指针、计算的变量指针等信息。  执行引擎:虚拟机的核心组件,负责执行虚拟机的字节码,一般先编译成机器码后执行。

JAVA内存模型:(共享内存模型JMM)定义了一个线程对另一个线程可见。共享变量存放在主内存中,每个线程都有自己的本地内存,当多个线程同时访问一个数据时,可能本地内存没有及时刷新到主内存,所以就会发生线程安全问题。

JAVA内存结构和JAVA内存模型相关推荐

  1. 区分 JVM 内存结构、 Java 内存模型 以及 Java 对象模型 三个概念

    本文由 简悦 SimpRead 转码, 原文地址 https://www.toutiao.com/i6732361325244056072/ 作者:Hollis 来源:公众号Hollis Java 作 ...

  2. 【转】JVM内存结构 VS Java内存模型 VS Java对象模型

    JVM内存结构 我们都知道,Java代码是要运行在虚拟机上的,而虚拟机在执行Java程序的过程中会把所管理的内存划分为若干个不同的数据区域,这些区域都有各自的用途. 其中有些区域随着虚拟机进程的启动而 ...

  3. JVM内存结构 VS Java内存模型 VS Java对象模型

    Java作为一种面向对象的,跨平台语言,其对象.内存等一直是比较难的知识点.而且很多概念的名称看起来又那么相似,很多人会傻傻分不清楚.比如本文我们要讨论的JVM内存结构.Java内存模型和Java对象 ...

  4. JVM(一)JVM虚拟机内存结构 和 JAVA内存模型(JMM)

    本文转自:浅析java内存模型--JMM(Java Memory Model) - 路易小七 - 博客园,尊重作者,转载请注明出处~ JVM虚拟机内存结构 和 JAVA内存模型 是两个不同的概念 JV ...

  5. 快速带你分清java内存结构,java内存模型,java对象模型和jvm内存结构!

    现如今你是否有这样的感觉,无论生活还是学习,节奏都是非常的快,每天面对海量的知识信息,自己感觉都要hold不住了,每天打开微信公众号,是不是发现有几十条未读,无论是技术文章还是其他类型的文章,我们大多 ...

  6. JVM之深入理解JVM内存结构(Java内存结构/Java内存区域)、Java内存模型

    Java作为一种面向对象的,跨平台语言,其对象.内存等一直是比较难的知识点.而且很多概念的名称看起来又那么相似,很多人会傻傻分不清楚.比如本文我们要讨论的JVM内存结构.JAVA内存结构.JAVA内存 ...

  7. java 堆内存结构_JVM内存结构、Java内存模型和Java对象模型

    JVM内存结构 我们都知道,Java代码是要运行在虚拟机上的,而虚拟机在执行Java程序的过程中会把所管理的内存划分为若干个不同的数据区域,这些区域都有各自的用途.其中有些区域随着虚拟机进程的启动而存 ...

  8. ART虚拟机 _ Java对象和类的内存结构,java中级面试题库weixin

    当我们想要创建一个java.lang.Class类的实例(类对象)时,以下三种方法可供选择: Class.forName("className") MyClass.class ob ...

  9. 【Android 逆向】Android 逆向基本概念 ( 软件运行时内存结构 | 文件与内存之间的联系 )

    文章目录 一.Android 软件运行时内存结构 二.Android 文件与内存之间的联系 一.Android 软件运行时内存结构 Android 软件运行时内存结构 : 硬件层 : 内存中 , 硬件 ...

  10. java对象模型是什么_蓝石榴_个人博客_JVM内存结构、Java内存模型、Java对象模型...

    JVM内存结构 我们都知道,Java代码是要运行在虚拟机上的,而虚拟机在执行Java程序的过程中会把所管理的内存划分为若干个不同的数据区域,这些区域都有各自的用途.其中有些区域随着虚拟机进程的启动而存 ...

最新文章

  1. http与https的区别,http 1.0与1.1的区别
  2. Nginx之反向代理、日志格式、集群、缓存、压缩、URl 重写,读写分离配置
  3. linux怎么查看fastq格式文件,2020-01-11 了解FASTQ格式并处理FASTQ文件
  4. 完整mes代码(含客户端和server端_200行代码实现基于paxos的kv存储
  5. if you go to the station early, what will you get
  6. abb机器人写字程序实例_abb机器人程序实例
  7. 代码雨代码源复制_p#39;y代码雨怎么做
  8. Bus Hound 软件实现长时间数据自动保存
  9. c语言小游戏 flybird Easyx编程 项目源码讲解
  10. 取消u盘写保护 u盘量产教程(无数尝试后的终极解决办法)
  11. 使用Map集合来做一个不同姓氏人数的统计 有一个String数组保存着10个人的姓名{“张三“,“李四“,“王二“...} 通过程序设计,把不同姓氏的姓氏和人数保存到Map集合中
  12. 数据错误循环冗余检查是什么意思_将解耦功能集成到电源中,会发生什么?
  13. 9.MVC模式 -- 改造源代码
  14. Netty in Action 中文版 --最贴近原著的翻译
  15. 《匆匆那年》的你,还记得吗?数学中的那些有(hui)趣(se)的定理(11)——XXX定理
  16. 计算机网络教学方式探讨论文,高职计算机网络安全课程教学改革探讨
  17. 30分钟java桌球小游戏_Java桌球小游戏(兴趣制作)
  18. TotalControl之手机录屏神器
  19. Web Components使用(一)
  20. %d,%05d,%-5d,%.5d的区分

热门文章

  1. 十年长空、历久弥新,SDCC即将盛大开启
  2. 基于ASP.NET的电子商务网站管理系统_WEB管理系统_SQLServer数据库应用
  3. 张小龙:如何把产品做简单(转)
  4. 找好木工的标准和要求
  5. 名片快印海报写真制作类网站织梦模板(带手机端)
  6. 第十七届全国大学生智能车竞赛西部赛区奖项
  7. powershell修改host文件
  8. 使用QT编写TCP服务器与客户端程序
  9. 小肥杨训练营——快速幂模板
  10. java-php-python-ssm校园摄影爱好者交流网站计算机毕业设计