xzz2021
发布于 2024-02-05 / 4 阅读
0
0

堆栈的学习理解

堆栈的学习理解

java虚拟机三个部分: 栈 堆 方法区(又称静态区)

方法区: jvm只有一个方法区, 被所有线程共享, 其类似堆,或者说在堆中另外开辟了一个类堆,但只存储类,常量,静态变量等不变的数据,(可能指js类中的private私有属性?而类内部定义了但外部能访问的属性存入堆中)===每个java程序(入口文件),都有一个入口main方法,jvm会给main生成一个栈帧

栈: 每个线程创建一个栈(类似弹夹),每个方法被调用时就生成一个栈帧(子弹), 子弹里存储局部变量,方法

堆: jvm只有一个堆,用于存储已创建的对象和数组, 被所有线程共享,也即其所存储的数据可以被所有线程读取
Snipaste_2024-11-05_17-01-02.png

待更新


评论