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

1.什么是设计模式?

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

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

2.单例设计模式

a.作用

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

b.写法

1.把该类构造器私有。

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

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

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

c.类型

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

,

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

相关推荐
Wang's Blog34 分钟前
Java 项目实战: 外卖平台优化-Nginx配置文件结构与块层级
java·开发语言·nginx
2601_962071571 小时前
类变量和全局变量的查找路径有什么区别?
开发语言·python
\光辉岁月/2 小时前
5.java-数组
java·开发语言
Java后端的Ai之路2 小时前
Python进阶探索29_eval内置函数
开发语言·python·探索·eval·内置函数
谢亮_vipxieliang2 小时前
Spring 事务失效的常见场景
java·开发语言·数据库·spring boot
时间的拾荒人3 小时前
Qt 多线程详解:从 QThread 到实战
开发语言·qt·面试
郑州光合科技余经理3 小时前
海外版外卖加盟:总站与分站配送规则怎么分开管
java·开发语言·前端·后端·uni-app·php·ai编程
2601_962071573 小时前
类变量和全局变量的生命周期有什么区别?
java·开发语言·jvm
code2cat3 小时前
Java进阶篇之AtomicReference:一次替换引用,读到一份完整状态
java·并发编程·不可变对象·atomicreference
专业程序开发源3 小时前
springboot简历管理系统81389-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·php·课程设计