String不可被继承,因为String⽤了final关键字定义了类。String是不可变类。
① JVM在设计时设计了字符串常量池存储及复⽤字符串,所以字符串需要定义为不可变的。
② 字符串可变会有安全问题,会被篡改。
③ String因为不可变,其HashCode⼀开始就完成了缓存,在Map中作为key可以提⾼性能,不需要实时计算。
閱讀更多 wendellFang 的文章
2020-02-14 22:28:37 wendellFang
String不可被继承,因为String⽤了final关键字定义了类。String是不可变类。
① JVM在设计时设计了字符串常量池存储及复⽤字符串,所以字符串需要定义为不可变的。
② 字符串可变会有安全问题,会被篡改。
③ String因为不可变,其HashCode⼀开始就完成了缓存,在Map中作为key可以提⾼性能,不需要实时计算。
閱讀更多 wendellFang 的文章