黑马程序员技术交流社区

标题: String创建对象的问题 [打印本页]

作者: 我想努力半年    时间: 2015-4-22 00:31
标题: String创建对象的问题
帮助大家复习下,有个问题是这样的:String s=new String("abc");创建了几个对象?

A、创建了两个 一个是“abc” 一个是指向“abc”对象的 S 对象。

B、只创建了一个字符串对象。



作者: cyr    时间: 2015-4-22 10:34
答案选A,具体原理可以百度一下。这是很古老的问题了。
作者: Wilsoncyf    时间: 2015-4-22 10:50
是A吧,嘿嘿
作者: zhuchangbao    时间: 2015-4-22 10:51
我只是看看,不说话。
作者: 古典牧童    时间: 2015-4-22 11:01
创建了 一个对象,另外一个是引用,不是对象
作者: 1017161726    时间: 2015-4-22 11:45
不管内存中有没有abc这个对象,都创建一个abc对象。然后创建一个变量s引用它。所以是两个。
作者: itheima_llt    时间: 2015-4-22 14:23
创意哦!楼主高人啊 谢
作者: 李成强    时间: 2015-4-22 15:41
本帖最后由 李成强 于 2015-4-22 15:44 编辑

两个对象,一个是“abc”,另一个是new String("abc"),  且"abc"  != new String("abc"),且String s 中的s只是一个String类型的变量,它不是对象,这个s变量指向了new String("abc")这个对象还有就是"abc"是一个常量,有可能是之前就存在了哦,这样的话,new String("abc")就是只创建了一个对象

作者: xizhenqing    时间: 2015-4-22 15:43
肯定是两个




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2