栈内存与堆内存的简单理解

  • Post author:
  • Post category:其他




栈内存

栈内存存储的内容都是局部变量,而当局部变量的作用域结束后,该变量所占的内存就会被释放。



堆内存

堆内存中存放的为通过new产生的数组和对象实体(数组也可以理解为对象的一种),当对象被建立时,栈内存中也会出现与之对应的一个局部变量。该局部变量通过指针与该对象实体所对应的内存区域建立关联,即指针指向对象实体的内存起始地址。

堆内存存在以下特点:

1.每个实体在堆内存中占据一段连续的内存空间,拥有一个首地址值;

2.堆内存中每个实体中的变量都根据所定义类型对应相应的默认初始化值。例如(integer:0 char:’\u0000’ bollean:false)

3.当实体所对应的堆内存空间的首地址不被栈内存中的局部变量所使用时,会被转化为内存垃圾,由垃圾回收机制定时清理。



版权声明:本文为weixin_45513023原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。