Java中String在jvm内存中位置
1 | public static void main(String[] args) { |
总结:String str=new String("abc");
会在常量池和堆中都创建abc, str指向堆中的abcString str="abc";
只在常量池创建abcString str=new String("abc")+"def";
在常量池中创建abc,def;在堆中创建abc和abcdef; str指向堆中abcdef;
1 | public static void main(String[] args) { |
总结:String str=new String("abc");
会在常量池和堆中都创建abc, str指向堆中的abcString str="abc";
只在常量池创建abcString str=new String("abc")+"def";
在常量池中创建abc,def;在堆中创建abc和abcdef; str指向堆中abcdef;