简介
单例模式是23种设计模式中比较基础的设计模式了。什么是单例呢,就是全局唯一的一个实例,一个类只有一个实例,只能通过唯一的入口来获取实例。
下面就跟大家分享下7种实现方式
饿汉式
顾名思义,取名叫饿汉式,就是一开始创建实例。
public class Hungry {
private static final Hungry instance = new Hungry();
private Hungry() {
}
public static Hungry getInstance() {
return instance;
}
}
优点: 实现简单,并且是线程安全的。
缺点: 在类加载的时候就初始化实例了,如果程序很久才使用该实例或者一直没有使用的话,该实例会一直在内存中,占用内存。所以有了下面的懒汉式。
懒汉式
懒汉式,就是延迟加载,在我们需要使用单例的实例的时候再创建。
public class Lazyload {
private static Lazyload instance = null;
private Lazyload() {
}
public static Lazyload getInstance() {
if (null == instance) {
instance = new Lazyload();
}
return