java中static Java中newString创建几个对象的解释是什么?
Java中newString创建几个对象的解释是什么?首先java虚拟机分为堆区,栈区,代码区,数据区创建了一个对象在执行String str =new String("ss")的时候 在堆区划分
Java中newString创建几个对象的解释是什么?
首先java虚拟机分为堆区,栈区,代码区,数据区创建了一个对象在执行String str =new String("ss")的时候 在堆区划分了一块内存给str,内容是ss,同时在栈区会存在一个对str的引用 例如:拿QQ举个例,桌面上的QQ快捷方式 并不是QQ.exe所在的位置如过把QQ.exe所在的位置看成是堆区,那么桌面的快捷方式就是在栈区里面的,原理就是这样补充一点:String str=new String("ss")String s="ss"String t=ssSystem.out.println(str==s)System.out.println(str==t)System.out.prtintln(s=t)输出是false,false,true直接赋值还有一个常量池的概念,new String() 就没有经过常量池,想对了解就留言吧