//栈帧是栈中开辟的每一块内存
栈
1.每个方法,被调用都会在栈中开辟一个栈帧,用于存储局部变量,操作数,方法出口
2.栈是先进后出,后进先出的
3.栈是由系统分配的内存,所以运行速度快,栈是一片连续的内存
4.JVM为每个线程都创建了一个栈帧,用于存放当前线程调用方法的信息(局部变量,实际参数)5.
5.栈属于线程私有,无法共享线程间的信息
堆
1.堆用来存储对象和数组
2.堆不是一片连续的内存,分配灵活,但速度慢
3.JVM只有一个堆,他被所有线程共享
方法区(又叫静态区)
1.用来存放程序中不变的和唯一的信息,类,字符串常量,
2.JVM只有一个方法区,被所有线程控制
//以上是我对于栈,堆,方法区的浅了解,仅供参考
最后
以上就是真实衬衫最近收集整理的关于Java的堆/栈/方法区的全部内容,更多相关Java内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复