A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

String s = new String("xyz");创建了几个String Object?

评分

参与人数 1技术分 +1 收起 理由
杨志 + 1

查看全部评分

4 个回复

倒序浏览
创建了两个,一个new String,另一个是"xyz"。
回复 使用道具 举报
2个
一个 是String 对象
一个是String 对象的引用
回复 使用道具 举报
在String str1 = new String("abc") ;代码中我们知道“abc”是匿名对象,那么在堆内存中就会有块空间是“abc”,紧接着new String("abc") 使用new在堆内存中又开辟了一个空间“abc”,最后String str1 = new String("abc") ;代码将最后生成的“abc”内存地址指向str1,最早的一个“abc”就没使用上。



回复 使用道具 举报
2个。一个放在在常量区。也就是"xyz"。另一个放在堆内存中(把地址赋值给栈内的变量s)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马