java中 String s = "123abc";与String s7= new String("123abc");的区别

2024-11-20 21:18:29
推荐回答(3个)
回答1:

String s = "123abc";
存在于方法区的常量池中,值不可改变
String s7= new String("123abc")
存在于堆内存中,s7有自己的内存地址,其中存在引用指向常量池中s的内存地址

回答2:

不用管,其实用起来一样。只是理论上第二个慢一点。不过你感觉不到的。

回答3:

建议你去了解 堆和栈的知识 了解后你就会永远都记住了