美文网首页js css htmlJAVA基础
Java中的String为什么不可变?不可变的好处

Java中的String为什么不可变?不可变的好处

作者: 在岁月中远行 | 来源:发表于2022-05-14 21:14 被阅读0次

1 不可变的原因

String的主要成员变量char value[]是private final类型的

String被声明为final class的

2 不可变的好处

可以缓存hash值 String的hash值经常被使用,例如用作hashmap的key,不可变的特性可以爱群主让hash值不可变,因此只需要进行一次计算。

String Pool的需要

如果一个String对象已经被创建过了,那么就会从String Pool中�取得引用,只有String是不可变的,才可能使用String Pool。

安全性

String经常作为参数,可以保证参数不可变。在网络连接参数的情况下如果String是可变的,那么不太去友好

线程安全

String 不可变性天生具有线程安全,可以在多个线程安全使用。

相关文章

网友评论

    本文标题:Java中的String为什么不可变?不可变的好处

    本文链接:https://www.haomeiwen.com/subject/yzvburtx.html