单例设计模式

简介: 单例设计模式

单例有啥应用场景?有啥好处?

在某些业务场景下,使用单例模式,可以避免浪费内存

       单例设计模式:

*确保一个类只有一个对象

写法:

*1.把类的构造器私有化

*2.定义一个类变量记住类的一个对象

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

饿汉式单例模式:在获取对象的时候,对象就已经创建好了

懒汉式单例模式:拿对象时,才创建对象

饿汉式单例模式写法:

public class A {
//定义一个类变量记住类的一个对象
 private static A a=new A();
 
//把构造器私有化,无法再创建对象
private A(){}
 
//定义一个类方法,返回对象
public static A getproject(){
return a;}
}

懒汉式单例模式写法:

public class B {
 
//懒汉式单例写法
 
//定义一个类变量记住类的一个对象
private static B b;
 
 
 
//把构造器私有化,无法再创建对象
 
private B (){}
 
 
//定义一个类方法,来返回对象
public static B getInstance(){
if(b==null){b=new B;}//第一次创建一个对象
 
return b;
 
}

注:经常用到单例设计模式时,可以用饿汉式单例设计模式,直接创建对象,反之可以用懒汉式单例设计模式

目录
相关文章
|
2月前
|
设计模式
单例设计模式步骤
单例设计模式步骤
21 1
|
2月前
|
设计模式 安全 测试技术
【C/C++ 设计模式 单例】单例模式的选择策略:何时使用,何时避免
【C/C++ 设计模式 单例】单例模式的选择策略:何时使用,何时避免
93 0
|
2月前
|
设计模式 缓存 安全
单例设计模式的优缺点
单例设计模式的优缺点
|
2月前
|
设计模式 XML 存储
关于 ABAP 单例设计模式的一个冷门知识点
关于 ABAP 单例设计模式的一个冷门知识点
|
2月前
|
设计模式 安全 Java
最简单的设计模式是单例?
单例模式可以说是Java中最简单的设计模式,但同时也是技术面试中频率极高的面试题。因为它不仅涉及到设计模式,还包括了关于线程安全、内存模型、类加载等机制。所以说它是最简单的吗?
63 3
最简单的设计模式是单例?
|
2月前
|
设计模式 安全 Java
【设计模式】2、设计模式分类和单例设计模式
【设计模式】2、设计模式分类和单例设计模式
38 0
|
2月前
|
设计模式 消息中间件 安全
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(二)
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(二)
39 1
|
2月前
|
设计模式 Java
26、Java 简单实现单例设计模式(饿汉式和懒汉式)
26、Java 简单实现单例设计模式(饿汉式和懒汉式)
37 2
|
2月前
|
设计模式 安全 Java
在Java中即指单例设计模式
在Java中即指单例设计模式
29 0
|
8月前
|
设计模式 存储
static应用之 单例设计模式(饿汉单例&懒汉单例)
本章我们来学习单例模式中的饿汉单例和懒汉单例,那么什么是单例模式呢?应用该模式的这个类永远只有一个实列,即一个类只能创建一个对象例如电脑上的任务管理器对象只需要一个就能解决问题,可以节省内存空间先定义一个类,把构造器私有如下图,先来看一下没有把构造器私有化的SingleInstance类,此时Test类中可以随意创建多个SingleInstance的实例化。 在SingleInstance类中用private修饰无参构造器,此时左边new方法报错了。我们在右边创建一个静态变量来存储对象,变量名为instan
35 0