堆(Heap)和栈(Stack)

详细可以查看这篇文章:https://www.cnblogs.com/qingtianMo/p/5255121.html

  1. 栈保存代码执行(调用)的路径,堆负责保存对象(数据)
  2. 栈相当于摞盒子,进入一个方法时就在顶部增加一个盒子,出一个方法时就拿掉顶上的一个盒子,所以是先进后出。堆相当于散乱丢在床上的衣服,可以随意拿去任意衣服没有限制。
  3. 栈是内存自动维护的。堆是垃圾回收机制进行维护的(可以人为手动维护)。
  4. 引用类型总是放在堆中。
  5. 值类型和指针总是分配在被定义的地方,他们不一定被分配到栈上。例如类中成员int a=1;那么这个a就是在堆中。
posted @ 2019-12-27 15:32  周董御用  阅读(181)  评论(0)    收藏  举报