黑马程序员技术交流社区

标题: 堆和栈的区别,有一个64k的字符串,是放到堆上,还是放到栈上,为什么? [打印本页]

作者: 草上飞    时间: 2012-10-23 19:41
标题: 堆和栈的区别,有一个64k的字符串,是放到堆上,还是放到栈上,为什么?
这是一个面试题请大家帮个忙,拜托
作者: 王健宇    时间: 2012-10-23 20:01
栈内存存储的名称;堆内存存储的内容;
例如:int i[]={1,2,3,4};
i[]是保存在栈内存中,而{1,2,3,4,}保存在堆内存中。
64k的字符串应该保存呢在对内存中。
作者: 秦松    时间: 2012-10-23 21:28
堆是存放实体 ,栈存放地址 堆内存由垃圾处理器管理,栈自动弹栈,效率较高



放在堆里,字符串存放在堆里,栈里放的是地址
作者: zhaosenyang    时间: 2012-10-25 00:20
字符串是常量,存放在方法区的常量池中
作者: 唐进    时间: 2012-10-25 00:29
补充一点,栈内存也可以放一些值类型,不一定都是引用,不过64K有点大,一般放在堆上面




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2