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

在 Java 中,请写出一段双重检查锁定实现单例的代码,并解释为何需要 volatile 关键字。

三星后端开发电子/半导体编码实现技术原理Java

考察说明

考察实际编码能力和对 JMM 可见性问题的理解

回答思路

  1. 正确写出 private 构造和 static volatile 字段
  2. 实现 getInstance 且双重判空并加锁
  3. 解释 new 操作重排导致的问题
  4. 说明 volatile 禁止重排并保证可见性
本题已收录答题指导

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

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