总结区别:
1、栈负责保存我们的代码执行(或调用)路径,而堆则负责保存对象(或者说数据)的路径。
2、栈和堆中主要放置了四种类型的数据:值类型(Value Type),引用类型(Reference Type),指针(Pointer),指令(Instruction)。引用类型总是放在堆中。值类型和指针总是放在它们被声明的地方。
3、栈是自行维护的,也就是说内存自动维护栈,当栈顶的盒子不再被使用,它将被抛出。相反的,堆需要考虑垃圾回收,垃圾回收用于保持堆的整洁性。
总结区别:
1、栈负责保存我们的代码执行(或调用)路径,而堆则负责保存对象(或者说数据)的路径。
2、栈和堆中主要放置了四种类型的数据:值类型(Value Type),引用类型(Reference Type),指针(Pointer),指令(Instruction)。引用类型总是放在堆中。值类型和指针总是放在它们被声明的地方。
3、栈是自行维护的,也就是说内存自动维护栈,当栈顶的盒子不再被使用,它将被抛出。相反的,堆需要考虑垃圾回收,垃圾回收用于保持堆的整洁性。