String s=new String("xyz");创建了几个String Object?二者之前的区别是什么?
两个。第一个对象是字符串常量"xyz",第二个对象是new String("xyz")的时候产生的,在堆中分配内存给这个对象,只不过这个对象的内容是指向字符串常量"xyz",另外还有一个引用s,指向第二个对象。这是一个变量,在栈中分配内存。
两个。第一个对象是字符串常量"xyz",第二个对象是new String("xyz")的时候产生的,在堆中分配内存给这个对象,只不过这个对象的内容是指向字符串常量"xyz",另外还有一个引用s,指向第二个对象。这是一个变量,在栈中分配内存。