单例模式面试题及详细答案.docxVIP

  • 1
  • 0
  • 约8.16千字
  • 约 10页
  • 2026-05-08 发布于河北
  • 举报

单例模式面试题及详细答案

一、基础概念题(必问,考察对单例的核心理解)

1.请说说什么是单例模式?它的核心作用是什么?

参考答案:单例模式是设计模式中创建型模式的一种,核心是保证一个类在整个应用程序的生命周期中,只实例化一次,并且提供一个全局唯一的访问入口,让外部只能通过这个入口获取该实例,不能自行创建。

核心作用有两个:一是减少内存消耗,避免频繁创建和销毁实例(比如工具类、连接池类,创建成本高,重复创建会浪费资源);二是保证实例的一致性,避免多个实例存在导致的数据混乱(比如配置类,多个实例可能持有不同的配置,引发业务异常)。

补充:单例模式不是万能的,滥用会导致代码耦合度升高、测试困难(无法模拟不同实例的场景),一般用于工具类、数据库连接池、日志工厂等不需要多实例的场景。

2.单例模式的核心设计要点有哪些?

参考答案:要实现一个标准的单例,必须满足3个核心要点,缺一不可:

私有构造方法:禁止外部通过new关键字创建实例,这是单例的基础(如果构造方法公开,外部可以随意new,就无法保证单例);

私有静态实例变量:存储该类唯一的实例,静态变量属于类级别的,不属于对象,能保证全局唯一;

公开静态访问方法:提供全局唯一的入口,让外部获取实例,同时控制实例的创建逻辑(比如懒加载、线程安全)。

二、核心实现题(重点,考察代码能力和细节)

1.请手写一个懒汉式单例(懒加载),并说明它的

文档评论(0)

1亿VIP精品文档

相关文档