后端岗位面试题更新 2026-08-05

String 为什么设计成不可变,怎么实现的不可变?

美团后端开发互联网/IT技术原理方案权衡Java

考察说明

考察对 Java String 不可变性的设计动机与底层实现机制的理解

回答思路

  1. 清楚说明不可变带来的安全、线程安全、字符串常量池与性能优势
  2. 能解释 final 类、private final char[] 数组、不提供修改方法等实现手段
  3. 能指出 new String 构造与字符串字面量的区别,并说明对不可变性的影响
  4. 能提到 String 不可变但不代表引用不可变,以及 StringBuffer/StringBuilder 的补充作用
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。