`
jokermanager
  • 浏览: 143832 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JVM内存分区

JVM 
阅读更多

JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method)

堆区:
1.存储的全部是对象,每个对象都包含一个与之对应的class的信息。(class的目的是得到操作指令)
2.jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用,只存放数据
栈区:
1.每个线程包含一个栈区,栈中只保存原始类型数据和对象和对象引用(不是对象),对象都存放在堆区中
2.每个栈中的数据(原始类型和对象引用)都是私有的,其他栈不能访问。
3.栈分为3个部分:基本类型变量区、执行环境上下文、操作指令区(存放操作指令)。
方法区:
1.又叫静态区,跟堆一样,被所有的线程共享。方法区包含所有的class和static变量。
2.方法区中包含的都是在整个程序中永远唯一的元素,如class,static变量。

分享到:
评论
1 楼 lsyacj 2009-04-28  
不知你是从哪里知道这些知识的,也就是说,如果我想了解一下有关Java比较低层的东西应该看哪些值得推荐的书?

相关推荐

    JAVA内存分区与CC++内存分区的总结

    ### JAVA内存分区与C/C++内存分区的深度解析 #### JAVA内存分区 在JAVA中,JVM(Java虚拟机)的内存主要分为三个区域:堆(heap)、栈(stack)和方法区(method)。每个区域都有其特定的功能和管理机制。 1. **...

    JVM内存模型及分区 JVM内存模型及分区

    理解JVM内存模型对于优化Java程序性能至关重要,合理分配和管理内存能有效避免内存泄漏和性能瓶颈。例如,通过调整堆大小、设置合理的垃圾回收策略,可以优化应用的运行效率。此外,了解这些内存区域的工作原理也能...

    JVM性能调优-JVM内存整理及GC回收.pdf

    ### JVM性能调优——JVM内存管理与GC回收详解 #### 概览 在现代软件开发领域,Java凭借其强大的跨平台能力和丰富的生态系统成为企业级应用的首选语言之一。然而,随着应用程序复杂度的提高以及业务需求的变化,...

    ibm HeapAnalyzer JVM内存分析工具 ha457.jar下载

    为了充分利用IBM HeapAnalyzer,你需要了解JVM内存管理的基本概念,包括堆内存分区、垃圾收集器的工作机制以及内存泄漏的常见模式。同时,理解如何在Java应用中生成堆转储文件也是必不可少的,这通常可以通过JVM的...

    vmmap 观察jvm内存 监控jvm jvm线程

    `vmmap`工具是Mac OS X系统中一个强大的内存分析工具,它可以用来深入观察JVM内存的分配和使用情况。本文将详细讲解如何利用`vmmap`监控JVM,理解其核心概念,以及分析JVM线程。 首先,`vmmap`是Apple提供的命令行...

    JVM面试题.pdf

    十一、JVM 内存分区 JVM 内存主要分为以下几个区: * 方法区:用于存储类信息、常量池(静态常量和静态变量)、编译后的代码(字节码)等数据。 * 堆区:用于存储初始化的对象,成员变量(非静态变量),所有的...

    JAVA面试核心知识点整理283页-2020.pdf.zip

    jvm内存分区,gc算法,类加载机制。并发编程,并发编程各大容器,锁。框架spring mybatis原理,组件介绍。架构设计有设计模式,负载均衡。网络有协议,java 高并发io框架netty。数据结构包括堆栈,队列,链表,...

    JVM面试专题及答案(1).pdf

    JVM内存分区概述 综上所述,JVM内存模型涵盖了多个区域,每个区域都有其特定的功能和用途: - **堆区**:负责对象实例和数组的存储。 - **栈区**:用于存储线程局部变量、操作数栈等。 - **方法区**:存储类信息...

    JAVA面试核心知识点整理.rar

    jvm内存分区,gc算法,类加载机制。并发编程,并发编程各大容器,锁。框架spring mybatis原理,组件介绍。架构设计有设计模式,负载均衡。网络有协议,java 高并发io框架netty。数据结构包括堆栈,队列,链表,...

    JVM面试专题及答案.pdf

    11. **JVM内存分区作用**: - **方法区**:存储类元数据,包括常量池、类型信息等,执行GC主要是清理不再使用的常量和卸载类。 - **堆**:管理对象生命周期,进行对象分配和垃圾回收。 - **栈**:支持方法调用,...

    2021Java字节跳动面试题——面向字节_JVM(上).pdf

    JVM内存分区 JVM内存模型分为以下几个部分: - **程序计数器**:记录当前线程执行的行号。 - **Java虚拟机栈**:每个线程私有的,用于存储局部变量表、操作数栈、动态链接、方法出口等信息。 - **本地方法栈**:...

    Linux查看CPU和内存使用情况查看jvm内存使用情况.docx

    本篇文章将详细阐述如何使用`top`命令查看CPU使用情况,以及如何通过`free`命令检查内存使用情况,同时也会涉及查看JVM内存使用的方法。 1. **使用`top`命令查看CPU使用情况** `top`命令提供了一个实时的全屏界面...

    java虚拟机面试及答案.doc

    10. **JVM内存分区作用**: - 方法区:存储类信息和运行时常量池。 - 堆:存储对象实例和数组。 - 栈:处理方法调用,存储局部变量。 - 本地方法栈:支持JNI本地方法。 - 程序计数器:指示下一条要执行的字节码...

    java实现内存动态分配

    9. **内存分区的其他部分** 除了堆和栈,Java内存还包括方法区(存放类信息)、程序计数器(记录下一条指令的位置)和本地方法栈(为Java Native Interface提供服务)。这些区域在Java内存模型中同样占有重要地位,...

    JVM初探- 内存分配、GC原理与垃圾收集器

    JVM内存管理是Java虚拟机的核心机制之一,其主要包含对象的创建、内存分配、垃圾回收以及内存释放等过程。在JVM中,垃圾回收(GC)是自动管理内存的关键技术,其目的是回收不再使用的对象所占用的内存空间,以避免...

    Linux查看CPU和内存使用情况查看jvm内存使用情况.pdf

    `top`命令还支持多种内部命令,如`s`可调整屏幕刷新频率,`l`开关第一部分的第一行信息显示,`t`开关任务和CPU信息显示,`m`开关内存和交换分区信息显示,`N`、`P`、`M`分别按PID、CPU使用率和内存使用率排序进程,`...

    深入了解 JVM 虚拟机(超详细入门攻略)

    6. **JVM内存分区及作用** - **虚拟机栈**:为方法提供栈帧,存储局部变量、操作数栈、动态链接等。 - **本地方法栈**:为JNI调用的Native方法服务。 - **程序计数器**:记录当前线程执行的指令地址,用于多线程...

    java面试题

    9. **垃圾回收(GC)与内存管理**:理解Java内存模型(JVM内存分区),垃圾回收的工作原理,以及如何避免内存泄漏。 10. **设计模式**:至少需要了解并能应用单例、工厂、观察者、装饰器、代理等常见设计模式。 11...

    JVM大厂高频面试题,连这些都不知道,还敢说自己学过JVM?

    11. **JVM内存分区**: - 与上述1中的内存模型相同。 以上只是JVM知识体系的一部分,实际面试中可能还会涉及到内存泄漏、内存溢出、垃圾收集算法的细节、JVM调优策略等内容。理解并掌握这些知识点,将有助于在面试...

Global site tag (gtag.js) - Google Analytics