单例模式简介
单例模式:是一种对象创建模式,用于生产一个对象的实例,确保系统中一个类只产生一个实例。
1、单例类只能有一个实例。
2、单例类必须自己创建自己的唯一实例。
3、单例类必须给所有其他对象提供这一实例。
1、懒汉模式 (线程不安全)
该单例模式线程不安全,在高并发下无法使用。
优点:第一次调用才初始化,避免内存浪费。
//懒汉式单例模式
public class Singleton {
private static Singleton instance;
private Singleton(){
}
public static Singleton getInstance(){
if (instance != null){ //在高并发下,会存在同时判断是否为null,造成影响创建多个实例
instance = new Singleton();
}
return instance;
}
}
2、单例模式(线程安全)
该单例模式线程安全。因为加锁synchroniz