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

请详细讲解单例模式的几种实现方式,并重点分析双重校验锁(DCL)中volatile的作用、可见性原理(MESI协议),以及将synchronized直接加在方法上的锁粒度问题。另外,请说明类加载机制如何实现懒汉式单例。

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

考察说明

考察Java并发编程、内存模型、类加载机制及设计模式综合理解

回答思路

  1. 能列举饿汉、懒汉(线程安全/非线程安全)、DCL、静态内部类、枚举等单例实现
  2. 准确说明DCL中volatile防止指令重排的必要性
  3. 理解MESI协议与可见性原理
  4. 指出synchronized加方法上锁粒度大、性能差的问题
  5. 解释类加载机制实现懒加载的原理
本题已收录答题指导

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

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