Java单例模式

点 赞
0
热 度
109
评 论
0

Java单例模式介绍

  • 可以保证系统中,应用该模式的这个类永远只有一个实例,即一个类永远只能创建一个对象。

  • 例如任务管理器对象我们只需要一个就可以解决问题,这样可以节省内存空间。

实现方式:

1、饿汉单例设计模式:

  • 在用类获取对象的时候,对象已经提前创建好了。

2、设计步骤:

  • 2.1、定义一个类、把构造器私有。

  • 2.2、定义一个静态变量存储一个对象。

3、懒汉单例设计模式:

  • 在真正需要该对象的时候,才去创建一个对象(延迟加载对象)。

4、设计步骤:

  • 4.1、定义一个类、把构造器私有。

  • 4.2、定义一个静态变量存储一个对象。

  • 4.3、提供一个返回单例对象的方法。

模式对比图

知识点

核心内容

考试重点/易混淆点

难度系数

单例设计模式定义

确保一个类只能创建一个对象的设计模式,通过私有构造器、静态变量存储唯一对象、静态方法暴露对象实现

构造器私有化的必要性(防止外部随意创建对象)

⭐⭐⭐

单例实现三步法

1. 私有化构造器

2. 定义静态变量存储唯一对象

3. 提供静态方法返回对象

静态变量与静态方法的作用(全局唯一性保障)

⭐⭐⭐⭐

饿汉式单例

对象在类加载时即创建(提前初始化),通过private static final变量存储

线程安全性(天然线程安全,但可能浪费资源)

⭐⭐⭐

单例应用场景

1. Runtime类(代表唯一JVM实例)

2. 任务管理器(唯一窗口对象)

与普通类的区别(如学生类不能单例)

⭐⭐

设计模式学习目标

1. 理解解决的问题

2. 掌握代码实现

面试高频考点(手写单例代码)

⭐⭐⭐⭐

代码封装必要性

私有化静态变量防止外部修改(如a = null破坏单例)

getInstance()方法的封装意义

⭐⭐⭐

对比:饿汉式 vs 懒汉式

饿汉式:提前创建对象

懒汉式:延迟创建(下节课内容)

资源占用与线程安全对比

⭐⭐⭐⭐


余乃云水散人,栖于数字之墟。性耽幽静,常以青简为田,墨痕为穗。晨起推窗,听松风煮茶;夜阑掩卷,伴竹影扫阶。此间筑小筑三椽,藏闲话若干:或遇史海遗珠,则录以素札;偶得诗瓢碎玉,便缀作清吟。往来皆烟霞客,谈笑有鸿儒踪。诸君若得暇,不妨暂驻云履,共品一盏烟岚,半卷春秋。

不具版权性
不具时效性

文章内容不具时效性。若文章内容有错误之处,请您批评指正。

目录

欢迎来到南鸢宸羲的站点,为您导航全站动态

163 文章数
39 分类数
3 评论数
48标签数
最近评论
xiaowang

xiaowang


求一个解压密码

西北技术支持中心

西北技术支持中心


缺点啥呢,有说明吗

西北技术支持中心

西北技术支持中心


开始建站了😀