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

单例模式的变量为什么要用 volatile 修饰,如果不用会出现什么问题?

微派后端开发游戏风险判断技术原理Java

考察说明

考察并发场景下单例模式实现的正确性,特别是指令重排与内存可见性

回答思路

  1. 说明双重检查锁模式中 volatile 的作用
  2. 解释不加 volatile 导致的指令重排和未正确初始化问题
  3. 说明内存可见性问题及多线程下可能读取到不完整对象
  4. 能给出正确的单例实现示例
本题已收录答题指导

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

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