创建一个可变的 java.lang.String

14 浏览
0 Comments

创建一个可变的 java.lang.String

众所周知,Java的字符串是不可变的。自Java问世以来,不可变字符串便成为了一个伟大的补充。不可变性允许快速访问和许多优化,与C风格的字符串相比,显著减少出错的可能性,并有助于强制执行安全模型。

有可能在不使用任何技巧的情况下创建一个可变字符串,即:

  • java.lang.reflect
  • sun.misc.Unsafe
  • 引导类加载器中的类
  • JNI(或JNA,因为它需要JNI)

但是否可能只使用纯粹的Java来实现,以便字符串可以随时修改?问题是如何实现?

0