Java 单例模式
单例模式保证了 系统内存中该类只存在一个对象,节省了系统资源,对于一些需要频繁创建销毁的对象,使
用单例模式可以提高系统性能。如:工具类、常用到的大对象
单例模式的几种写法
懒汉式
饿汉式(本篇文章介绍)
使用静态内部类实现单例模式
使用枚举来实现单例
双重校验锁
饿汉式
如字面描述「饿汉式」就意味在很 饿 不需要我们手动创建, 同时饿汉式也是最简单、用的最多的方式。
好处: 是提前创建无需我们手动创建 & 考虑线程安全问题
坏处: 提前创建造成空间浪费。(非极端情况下谁会在乎那么点点内存呢?)
-
天然的线程安全
public class Singleton{ // 直接创建一个实例, 让业务方可以直接使用 private static final Singleton instance = new Singleton(); // 私有化构造方法 private Singleton(){} // 创建的实例的构造方法 public static Singleton getInstance(){ return instance; } }
个人博客