java 单例设计模式(懒汉与饿汉)

2021/9/25 22:10:38

本文主要是介绍java 单例设计模式(懒汉与饿汉),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.单例设计模式的作用:
单例模式是一种常用的软件设计模式,通过单例模式可以保证系统中,应用该模式的这个类只有一个实例 ***(一个类一个对象实例)***,否则按照正常类来可以创建多个对象.

2.单例设计模式实现步骤:

  • 将构造方法私有化,使其不能在类的外部通过new关键字实例化该对象.
  • 在该类内部产生一个唯一的实例化对象,并且将其封装为private static类型的成员变量
  • 定义一个静态方法返回这个唯一对象

根据实例化对象的时机单例设计模式分为以下两种:

  1. 饿汉单例设计模式:在使用类的时候已经将对象创建完毕,不管以后会不会使用该实例对象.
public class Singleton {
   // 1.将构造方法私有化,使其不能在类的外部通过new关键字实例化该类对象。
   private Singleton() {}

   // 2.在该类内部产生一个唯一的实例化对象,并且将其封装为private static类型的成员变量。
   private static final Singleton instance = new Singleton();
   
   // 3.定义一个静态方法返回这个唯一对象。
   public static Singleton getInstance() {
       return instance;
   }
}
  1. 懒汉单例设计模式:调用getInstance()方法时实例才被创建,先不着急实列化出对象,等需要时才实列化对象.
public class Singleton {

   // 2.在该类内部产生一个唯一的实例化对象,并且将其封装为private static类型的成员变量。
   private static Singleton instance;
   
   // 1.将构造方法私有化,使其不能在类的外部通过new关键字实例化该类对象。
   private Singleton() {}
   
   // 3.定义一个静态方法返回这个唯一对象。要用的时候才例化出对象
   public static Singleton getInstance() {
       if(instance == null) {
           instance = new Singleton();
       }
       return instance;
   }
}


这篇关于java 单例设计模式(懒汉与饿汉)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程