单例模式(设计模式1)

核心作用:

  -保证一个类只有一个实例,并且提供一个访问该实例的全局访问点

电脑的管理器,一旦创建一个一个任务管理器,再去创建还是原来的。

一、单例模式:饿汉式。

饿汉式:不管创建多少个对象都是同一个对象

二、懒汉式:具有延时加载。加入同步,调用效率低。

三、双重检测锁:由于编译器优化和JVM底层内部模型会有问题,偶尔会出问题

      不建议使用。

四:静态内部类模式  

优点:1线程安全,2调用效率高,3具有懒加载

/**
* 外部类没有static属性,不会像饿汉式那样立即加载对象
* 只有真正的调用getInstance(),才会加载静态内部类加载雷士是线程安全,instance
*是static final类型保证了内存中只有一个这样的实例,而且只能被赋值一次,从而保证了线程安全
*兼备了并发高效调用和延时加载的优势。
* */

五、枚举式单例模式

枚举元素本身就是一个单例,线程安全,

可天然的防止反射和反序列化的漏洞

但不具有延时加载

测试时间:

原文地址:https://www.cnblogs.com/chengbao/p/4818914.html