首页 > 编程语言 > 详细

Java堆与栈

时间:2018-11-23 17:45:34      阅读:149      评论:0      收藏:0      [点我收藏+]

Java的堆是一个位于随机访问存储器(RAM)的运行时数据区。通常使用new操作符在堆中创建对象,它们不需要程序代码来显式的释放

堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是在运行时动态分配内存的,Java的垃圾收集器会自动收走这些不再使用的数据。

但缺点是,由于要在运行时动态分配内存,存取速度较慢。

Java的栈也位于RAM,它的存取速度比堆要快,仅次于寄存器且据可以共享,主要存放一些基本类型的变量和对象的引用;但存在于栈中的数据大小与生存期必须是确定的,缺乏灵活性。

栈有一个很重要的特殊性,就是存在栈中的数据可以共享。

基本数据类型存放到栈

引用数据类型存放到堆

Java堆与栈

原文:https://www.cnblogs.com/juquanyu-com/p/10008859.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!