栈分配

来源:6-11 Java内存模型之 常考题解析-1

慕粉13951610073

2019-09-27

老师讲栈分配的时候,讲到了栈支持动态分配和静态分配。,,能举个例子吗,栈什么时候是进行动态分配的?

写回答

1回答

翔仔

2019-09-28

同学好,动态分配是在程序执行时才知道要分配的储存空间大小,而不是在编译时就确定的。

比如有一个函数,里面有一个List,List的大小依赖于你外部传递进来的参数,那么在编译期间是没办法确定大小的,而需要在运行中进行动态分配,此时就是栈内存的动态分配。而如果之前在里面都是一些写死了的常量,则那部分已经是确定好了的,属于静态分配

0
2
翔仔
回复
慕粉13951610073
sorry,晚上脑子不清晰,list打错比方了,那个是堆的,可以把list替换成一个基本类型的变量,比如是int型的,依赖于传递进来的参数赋值,那么这个时候是动态分配的:)
2019-09-29
共2条回复

剑指Java面试-Offer直通车 百度资深面试官授课

招聘季即将到来,让百度资深面试官来为你的高薪Offer保驾护航

8427 学习 · 1870 问题

查看课程