【发布时间】:2013-08-17 15:09:30
【问题描述】:
java 中使用的使字符串不可变的技术?
或者我怎样才能使我的字符串类不可变。
我只是想知道这背后的逻辑。
【问题讨论】:
-
字符串已经是不可变的。
-
JDK 在
src.zip文件中提供了Java 标准类的源代码。看一下 String 类代码,您将了解它是如何完成的。也看看how-to-create-immutable-objects-in-java -
@Pshemo In
src.zip包含所有公开可用的源文件。但对于初学者来说很难理解。 :( -
@PawanMishra 没有人说这很容易:/这就是为什么我给你第二个链接,这样你就可以看到要寻找的东西。为了使查看更容易,您可以在 Eclipse 或 NetBeans 等 IDE 中使用此文件,然后按
method()和 Ctrl 键导航到方法声明/实现。 -
注意:字符串实际上是不可变的,但从技术上讲,它在 Java 7 中有两个可变字段。它们用于缓存 hashCode。
标签: java string immutability