设计模式面试大全:说一下单例模式,及其应用场景?

定义

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一,此模式保证某个类在运行期间,只有一个实例对外提供服务,而这个类被称为单例类。
单例模式也比较好理解,比如一个人一生当中只能有一个真实的身份证号,一个国家只有一个政 府,类似的场景都是属于单例模式。

使用单例模式要做的两件事

  1. 保证一个类只有一个实例
  2. 为该实例提供一个全局访问节点

单例模式结构

单例的实现

  • 饿汉式
  • 懒汉式
  • 双重检测
  • 静态内部类
  • 枚举方式

应用场景

  • 资源共享的情况下,避免由于资源操作时导致的性能或损耗等。如上述中的日志文件,应用配置。
  • 控制资源的情况下,方便资源之间的互相通信。如线程池等。
相关推荐
彩票管理中心秘书长1 分钟前
MySQL 用户与权限管理 (DCL) 操作命令大全
后端
langsiming4 分钟前
【无标题】
java·开发语言·数据库
彩票管理中心秘书长6 分钟前
MySQL 索引、事务与约束操作命令大全
后端
Rust语言中文社区7 分钟前
【Rust日报】2026-04-24 Vizia 0.4 发布——纯 Rust 声明式响应式 GUI 框架
开发语言·后端·rust
weisian15110 分钟前
Java并发编程--45-分布式一致性协议入门:Raft、Paxos与ZAB的核心思想
java·分布式·raft·paxos·zab
木井巳11 分钟前
【递归算法】解数独
java·算法·leetcode·决策树·深度优先·剪枝
t***54417 分钟前
如何在 Dev-C++ 中切换编译器
java·开发语言·c++
Lisonseekpan19 分钟前
Git:如何将一个分支的特定提交合并到另一个分支?
java·大数据·git·后端·elasticsearch
Boop_wu20 分钟前
[Java EE 进阶]Mybatis进阶(动态SQL)
java·数据库·maven·mybatis
BullSmall42 分钟前
Redis 双机部署 完整方案(两种架构,适配两台机器)
java·redis·架构