String x = “abcd”
String y = new String(“zbcd”);的区别:
X 指向的是数据段中的字符串常量对象。
Y指向的是堆中的字符串对象,在堆中所产生的字符串对象,必须以数据段中的字符串常量对象为模板,将字符串常量对象的内容复制到堆中。
所以new String(“abcd”)有可能产生两个对象,一个在堆中,一个在数据段中。