问题描述
- String s =new String("xyz")创建了几个String Object
-
如题所示 String s =new String("xyz")创建了几个String Object
解决方案
String s=new String("xyz")究竟对象个数分为两种情况:
1.如果String常理池中,已经创建"xyz",则不会继续创建,此时只创建了一个对象new String("xyz");
2.如果String常理池中,没有创建"xyz",则会创建两个对象,一个对象的值是"xyz",一个对象new String("xyz")。
解决方案二:
一个! 就是一个 s字符串,内容是“xyz”
解决方案三:
就一个,堆里面一个字符串变量指向栈里面一个字符串对象!
解决方案四:
会先用"xyz"生成一个匿名对象,然后再把该匿名对象的地址赋给s
解决方案五:
1个 String S:只是1个声明,类似C里面的指针 指向”xyz“的地址空间
解决方案六:
一个String,因为你只new了一次
时间: 2024-08-25 00:34:36