We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 0d308e7 commit d011ff6Copy full SHA for d011ff6
docs/java/jvm/memory-area.md
@@ -242,12 +242,12 @@ Class 文件中除了有类的版本、字段、方法、接口等描述信息
242
**字符串常量池** 是 JVM 为了提升性能和减少内存消耗针对字符串(String 类)专门开辟的一块区域,主要目的是为了避免字符串的重复创建。
243
244
```java
245
-// 在堆中创建字符串对象”ab“
246
-// 将字符串对象”ab“的引用保存在字符串常量池中
+// 在字符串常量池中创建字符串对象 ”ab“
+// 将字符串对象 ”ab“ 的引用返回给引用 aa
247
String aa = "ab";
248
-// 直接返回字符串常量池中字符串对象”ab“的引用
+// 直接返回字符串常量池中字符串对象 ”ab“,赋值给引用 bb
249
String bb = "ab";
250
-System.out.println(aa==bb);// true
+System.out.println(aa==bb); // true
251
```
252
253
HotSpot 虚拟机中字符串常量池的实现是 `src/hotspot/share/classfile/stringTable.cpp` ,`StringTable` 可以简单理解为一个固定大小的`HashTable` ,容量为 `StringTableSize`(可以通过 `-XX:StringTableSize` 参数来设置),保存的是字符串(key)和 字符串对象的引用(value)的映射关系,字符串对象的引用指向堆中的字符串对象。
0 commit comments