java程序在内存中的存储分配情况:

一、

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

二、内存分区
而内存分为四个区:stack segment,heap segment,data segment,code segment;
stack 区存放函数参数和局部变量;heap  区存放对象;data  区存放static 的变量或者字符串常量; code  区存放类中的方法;
因此,静态变量是存放在data区的 !

java程序在内存中的存储分配相关推荐

  1. Java程序在内存中运行详解

    Java语言是一门编译型语言,需要将编写的源代码(.java文件)编译之后(.class字节码文件),通过 jvm 才能正常的执行,下面的内容记录了一个程序从编写到执行整个过程在内存中是怎么一个变的. ...

  2. Java 数组在内存中的存储 数组的常见操作

    Java虚拟机的内存划分 为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式. JVM的内存划分: 区域名称 作用 寄存器 给CPU使用,和我们开发无关 ...

  3. Java对象在内存中的存储

    文章目录 1.HotSpot中,对象在内存中分为3块区域: 2.通过一个demo了解这三块区域 3.通过一个demo了解锁标志位 1.HotSpot中,对象在内存中分为3块区域: 对象头 MarkWo ...

  4. Java变量在内存_Java变量在内存中的存储

    [TOC] Java变量在内存中的存储 以下探究成员变量和局部变量在内存中的存储情况. package com.my.pac04; /** * @author Summerday * @date 20 ...

  5. (二十六)、Java数组在内存中如何存放与分配

    Java中有两种类型的数组: 基本数据类型数组: 对象数组: 当一个对象使用关键字"new"创建时,会在堆上分配内存空间,然后返回对象的引用,这对数组来说是一样的,因为数组也是一个 ...

  6. java set第n位_Java学习路线:float在内存中的存储

    Java学习路线:float在内存中的存储,最近在讲Java基础,讲到数据类型的转换,提到整数类型长字节类型数据放到短字节类型数据中时,由于字节数不够,会截断数据,所以需要程序员手动强制类型转换,例如 ...

  7. Java数组在内存中的分配

    Java数组在内存中的分配 在Java中,数组存储对象的原始值(int,char,...)或引用(也称为指针). 使用"new"创建对象时,会在堆中分配一个内存空间并返回一个引用. ...

  8. Java 字段在内存中存储是大端还是小端

    Java 字段在内存中是小端存储的,即低位字节在前,高位字节在后. 大小端的最小单位是字节,即大小端决定的是字节的排序. 而字节内部的排序永远不受影响,永远都是高位在前,低位在后. 验证 比如存储一个 ...

  9. 对象在内存中的存储基本类型和包装类java类型转换

    对象在内存中的存储 对象头.实例数据和填充数据(为了对齐) 实例变量:存放类的属性数据信息,包括父类的属性信息,如果是数组的实例部分还包括数组的长度,这部分内存按4字节对齐. 填充数据:由于虚拟机要求 ...

最新文章

  1. git切换ssh和http协议
  2. 电脑如何测网速_物联网卡的网速到底怎么样呢
  3. ospf避免环路_13、OSPF的选路规则及路由控制
  4. Win10系统msvcr120.dll丢失解决
  5. 图像函数 imagecreatetruecolor()和imagecreate()的异同点
  6. 【语音识别】获得MOOC视频的文本(字幕)
  7. 计算机硬件专业实习日志,计算机维护实习日记总汇
  8. SAP中计划日历计算规则的理解
  9. 太牛了!B 站 UP 主开发会写高考作文的 AI
  10. 2-PHP代码审计——PHPCMSV9.6.0 sql注入漏洞
  11. SIOCADDRT: File exists
  12. 如何使用Python抓取移动端APP的评论(小白篇)
  13. Pico VR 应用开发基础教程
  14. 商家门店会员管理,只要这五步,稳步提升销售额
  15. mysql navicat怎么打开文件_navicat怎么打开sql
  16. 服务器安全证书未生效怎么办,win7打开网页提示“该服务器的安全证书尚未生效...
  17. [CF549F/51nod1472]Yura and Developers
  18. setsockopt()函数和getsockopt()函数
  19. 火鸟程序_火鸟网络管理
  20. TiDB中的混沌测试实践

热门文章

  1. Android非常好用的组件或者框架
  2. Producing function in SQL.
  3. 基于windows server 2008 web服务器的性能,Windows Server 2008之应用程序服务器解析
  4. 计算机教学assure模型教案,ASSURE模型在大学计算机基础教学中的应用探索
  5. Linux浏览器libgtk-3,终于把WebKit(基于GTK)移植到ARM上
  6. 单纯形表的matlab输出,自编MATLAB版单纯性算法 可以列出单纯形表以及其他相关数据...
  7. 设计灵感|C4D在海报中可以这样应用
  8. 老司机如何找素材,如何找灵感?
  9. 设计类超实用的导航网站,一网包含1000+个行业内热门资讯灵感源!
  10. 电阻参数_贴片电阻的参数标识与贴片电阻的选择