java内存管理问题 string str1 = "abc";char[] str2 = {a,b,c};他们在栈中是不是一个位置,是不是存储的格式一样啊?请高手们指点 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 char[]是一个类型。而string是一个类,所以肯定是不一样的。 这个具体又要看JVM的规范了 不要乱说的 str1是应该是在堆中分配空间的,str2是在栈中分配的 看看编译原理的书好不好由于是静态字符串变量,所以“abc”编译时被放置到静态数据区中;而数组则是在堆中申请的数据,空间在堆中。 当然不是,存储格式也不一样但它们应该同在栈内,栈内有"abc",'a','b','c',str1指向"abc"的地址,str2应该指向'a'。至于'a','b','c'连续不连续就不清楚了 "abc"是在数据区分配的空间,str1存的是"abc"在数据区的地址。{a,b,c}是在堆中分配的空间,str2存的是他的堆中地址 1.字符串字面量是在常量池里的。不要跟栈扯上关系。2.知道什么是引用,什么是对象。3.知道栈是干什么用的。在推荐里有一个关于字符串jvm如何处理的帖子,很好,推荐看一下. 学完java基础,做几个什么样的项目比较好,熟练知识 NetBeans 做一个俄罗斯方块 Java 怎么通过URL引用得到真正的文件名 请高手帮忙 打印五角星 编写一java类 利用1圆,2圆,5圆,10圆 求出和为100圆的所有可能的组合(100分送) 迅雷二笔java题都有些什么类型啊? 如何在窗体里嵌套的面板上画圆? 请哪位高手帮小女子一把,用java实现音频,视频的实时传输 一道笔试题~~~what is a javabean? 急求一组测体积的算法! 新手求助 java 怎么实现根据传入的数据库表的名字将数据生成XML文件
而string是一个类,所以肯定是不一样的。
而数组则是在堆中申请的数据,空间在堆中。
但它们应该同在栈内,栈内有"abc",'a','b','c',str1指向"abc"的地址,str2应该指向'a'。至于'a','b','c'连续不连续就不清楚了
{a,b,c}是在堆中分配的空间,str2存的是他的堆中地址
2.知道什么是引用,什么是对象。
3.知道栈是干什么用的。
在推荐里有一个关于字符串jvm如何处理的帖子,很好,推荐看一下.