网站首页 美食营养 游戏数码 手工爱好 生活家居 健康养生 运动户外 职场理财 情感交际 母婴教育 时尚美容

java如何进行内存分配

时间:2024-10-16 13:45:54

1、具体的概念:JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method,也叫静态区):

2、JVM对自己的内存进行了划分5个区域a、寄存器:内存和CPU之间b、本地方法栈:JVM调用了系统中的功能c、方法和数据共享:运行时期class文件,进行的地方d、方法栈:所有的方法运行的时期,进行的内存e、堆(heap):存储的是容器和对象如下图所示。

java如何进行内存分配

3、堆区:1.存储的全部是对象,每个对象都包含一个与之对应的class的信息(class的目的是得到操作指令) ;2.jvm只有一个堆区(heap),且被所有线程共享,堆中不存放基本类型和对象引用,只存放对象本身和数组本身;

4、栈区:1.每个线程包含一个栈区,栈中只保存基础数据类型本身和自定义对象的引用;2.每个栈中的数据(原始类型和对象引用)都是私有的,其他栈不能访问;3.栈分为3个部分:基本类型变量区、执行环境上下文、操作指令区(存放操作指令);

5、方法区(静态区):1.被所有的线程共享,方法区包含所有的class(class是指类的原始代码,要创建一个类的对象,首先要把该类的代码加载到方法区中,并且初始化)和static变量。2.方法区中包含的都是在整个程序中永远唯一的元素,如class,static变量。

6、运行该程序时,首先启动一个Java虚拟机进程,这个进程首先从classpath中找到AppMain.class文件,读取这个文件中的二进制数据,然后把Appmain类的类信息存放到运行时剞麽苍足数据区的方法区中,这就是AppMain类的加载过程。 接着,Java虚拟机定位到方法区中AppMain类的Main()方法的字节码,开始执行它的指令。这个main()方法的第一条语句就是:

java如何进行内存分配
© 2025 一点资料
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com