【发布时间】:2020-01-03 15:52:52
【问题描述】:
以下代码将创建多少个对象以及它们将存储在哪里?
String s = "abc"; // line 1
String s1 = new String("abc"); // line 2
String str1 = new String("efg"); //line 3
【问题讨论】:
-
将创建 3 个对象,1 个在 SCP,2 个在堆中
-
您的最佳猜测是什么?为什么?
-
搜索
how many strings created会产生很多类似的问题。 -
@Deadpool 请原谅,但我不会说 newspeak SCP 意思是“字符串常量池”吗?
-
不会“efg”也存储在字符串池中吗?
标签: java string heap-memory string-pool