首页 >常见问题 >heap和stack区别是什么

heap和stack区别是什么

coldplay.xixi
coldplay.xixi原创
2020-11-27 14:11:4130472浏览

heap和stack区别:1、heap是堆,stack是栈;2、stack的空间由操作系统自动分配和释放,heap的空间是手动申请和释放的;3、stack空间有限,heap的空间是很大的自由区。

heap和stack区别是什么

heap和stack区别:

1、heap是堆,stack是栈。

2、stack的空间由操作系统自动分配和释放,heap的空间是手动申请和释放的,heap常用new关键字来分配。

3、stack空间有限,heap的空间是很大的自由区。在Java中,若只是声明一个对象,则先在栈内存中为其分配地址空间,若再new一下,实例化它,则在堆内存中为其分配地址。

4、举例:数据类型 变量名;这样定义的东西在栈区。如:Object a =null; 只在栈内存中分配空间new 数据类型();或者malloc(长度); 这样定义的东西就在堆区如:Object b =new Object(); 则在堆内存中分配空间

以上是heap和stack区别是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn