JAVA单例模式

目录:

  1. 单例模式的作用
  2. 实现的步骤
  3. 两种模式的区别
  4. 饿汉模式
  5. 懒汉模式

1. 单例模式的作用:

使java中一个类只能创建一个对象

2. 实现的步骤:

  1. 把构造方法私有
  2. 自己创建一个对象,并且用私有静态成员变量存起来。
  3. 提供一个getter方法获取该静态成员变量

3. 两种模式的区别:

单例模式分为两种:

  1. 饿汉单例设计模式
  2. 懒汉单例设计模式

两种模式的区别:

  • 饿汉式单例成员变量一开始就定义好了
  • 懒汉式是只有使用的时候才进行初始化

不考虑性能情况下:饿汉式更常用

4. 饿汉模式

饿汉单例设计模式就是使用类的时候已经将对象创建完毕,不管以后会不会使用到该实例化对象,先创建了再说。很
着急的样子,故被称为“饿汉模式”。

代码示例:

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

5.懒汉单例模式

懒汉单例设计模式就是调用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;
	}
}
TAG: JAVA

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.itniuboke.com/article/22195.html