单例模式(Singleton):即某个类在整个系统中只能有一个实例对象可被获取或使用的代码模块
单:唯一
例:实例
要点:
几种常见形式:
饿汉式创建:直接创建对象,不存在线程安全问题
懒汉式创建:
上代码:
饿汉1:直接实例化
饿汉2:枚举式
饿汉3:静态代码块
使用场景:单例中存在私有成员变量,需构造赋值,可在静态代码块中读取配置文件,构造单例
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
懒汉1:线程不安全
测试:在初始化时让线程睡眠1s(模拟效果)
懒汉2:线程安全
懒汉3:静态内部类形式
原文:https://www.cnblogs.com/chai-blogs/p/12609504.html