Java:String的“设计奥秘”( 二 )


可以这样做的前提是:

  • 实现该优化的基础是因为字符串是不可变的(查看String的源码可以看到String类的修饰符是final) , 可以不用担心数据冲突进行共享
  • 运行时实例创建的全局字符串常量池中有一个表 , 总是为池中每个唯一的字符串对象维护一个引用这就意味着它们一直引用着字符串常量池中的对象 , 所以 , 在常量池中的这些字符串不会被垃圾收集器回收
其实总结起来就是一句话:常用的东西我就存起来 , 反复用 , 省的每次都去新建了 。

【Java:String的“设计奥秘”】关注我 , 我们一起进步


推荐阅读