String s = new String("xyz"); 为什么创建了2个String Object? 能说下原理吗,谢谢... 能说下原理吗,谢谢 展开 我来答 可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。 string xyz 搜索资料 2个回答 #热议# 发烧为什么不能用酒精擦身体来退烧? time飞啊飞的 推荐于2017-10-08 · 超过32用户采纳过TA的回答 知道答主 回答量:79 采纳率:0% 帮助的人:62.9万 我也去答题访问个人页 关注 展开全部 String s = new String("xyz");创建两个对象第一个 new的时候 会在堆生成一个对象 第二个 当成参数传入的"xyz"会在常量池生成一个对象 以后用 String x="xyz" 之类的新的变量都会引用常量池的xyz所以是生成两个对象 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 Fgcfgvgjh 2014-12-04 知道答主 回答量:1 采纳率:0% 帮助的人:1292 我也去答题访问个人页 关注 展开全部 "xyz"在java中规定为直接量,即可以把"xyz"看作一个string对象,这样使得更人性化,只不过,它是呆在堆内存的string pool区内的。而你又用"string s=new string()"在堆内存内创建了一个string对象,此时,你调用的构造方法是string(string s),相当于创造了一个与"xyz"string对象值一致的引用名为s的string对象 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询 其他类似问题 2017-09-20 String s = new String("xyz"); 时候创建了几个对象? 73 2019-11-27 String s = new String("xyz");创建了几个String Object? 二者之间有什么区别? 1 2019-12-11 String s = new String("xyz"); 时候创建了几个对象? 更多类似问题 > 为你推荐: