java面向对象高级02——单例类(设计模式)

1.什么是设计模式?

一个问题可以有多种解法,在众多解法的最优解法、方案就是设计模式。

我们关注的点:某一种设计模式解决的是啥问题?这一设计模式怎么写?

2.单例设计模式

a.作用

单例设计模式的核心作用是确保一个类只有一个实例,并提供一个全局访问点。这种模式常用于管理共享资源或控制某些全局行为。

b.写法

1.把该类构造器私有

2.定义一个类变量记住类的一个对象*(可以用private修饰;也可以写成public修饰,但是要加final,这样就只可以写一次)*

3.定义一个类方法,返回对象

//**通俗易懂的说就是自己先下手实例化对象***,***并提供传出的方法,然后把外接实例化对象的方法堵死(构造器私有)。

c.类型

饿汉式单例: 如上图所示,在"拿走"对象时候,对象已经被创建。即在单例类中定义变量的时候就new出对象。

使用get方法调用该变量的时候,对象早就已经被创建了。
懒汉式单例: 在拿走的同时建立对象

相关推荐
code小毛孩8 小时前
如何简单的并且又能大幅度降低任务队列的锁粒度、提高吞吐量?
java·jvm·数据库
你不是我我8 小时前
【Java开发日记】请介绍类加载过程,什么是双亲委派模型?
java·开发语言
牢七8 小时前
java10
java
teeeeeeemo8 小时前
Webpack 模块联邦(Module Federation)
开发语言·前端·javascript·笔记·webpack·node.js
阿挥的编程日记9 小时前
基于SpringBoot的高校(学生综合)服务平台的设计与实现
java·spring boot·后端·spring·mybatis
小霞在敲代码9 小时前
ArrayList - 数据结构 - 数组
java·索引
修炼室9 小时前
如何将Python脚本输出(含错误)全量保存到日志文件?实战指南
开发语言·python
@LetsTGBot搜索引擎机器人9 小时前
用 Python 打造一个 Telegram 二手交易商城机器人
开发语言·python·搜索引擎·机器人·.net·facebook·twitter
liu****9 小时前
2.c++面向对象(三)
开发语言·c++
linux kernel9 小时前
第二十四讲:C++中的IO流
开发语言·c++