
设计模式
23种设计模式
全村的希望~
做一个优秀的程序猿攻城狮
展开
-
java反射破解单例模式
java反射破解单例模式代码演示如何避免到底如何彻底解决呢代码演示// 懒汉式: 用的时候创建public class LazyMan { private LazyMan() { synchronized (LazyMan.class) { } } private volatile static LazyMan lazyMan; ...原创 2020-05-02 02:33:55 · 547 阅读 · 0 评论 -
单例模式之DCL懒汉式解析(双重检验锁)
单例模式之DCL懒汉式解析(双重检验锁)双重检验锁不安全的原因在下面的代码进行到: lazyMan = new LazyMan();的时候有可能会进行指令重排.lazyMan = new LazyMan(); 这一句代码其实有3个操作分配内存空间执行构造方法 初始化对象把对象指向 内存空间A 线程的执行顺序可能是1 3 2, 并且由于不是原子性操作过程, A在操作的过程会可...原创 2020-05-01 15:15:15 · 1202 阅读 · 1 评论 -
验证普通懒汉式单例模式在多线程下不安全
验证普通懒汉式单例模式在多线程下不安全// 懒汉式: 用的时候创建public class LazyMan { private LazyMan() { } private static LazyMan lazyMan; // 单线程ok public static LazyMan getLazyMan() { if (lazyMan ...原创 2020-05-01 13:31:19 · 466 阅读 · 0 评论 -
JAVA几种常见的单例模式实现
JAVA几种常见的单例模式实现什么是单例模式单例模式分类饿汉式举例三种创建方式懒汉式举例什么是单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,单例模式是一种对象创建型模式。某个类只能有一个实例:构造器私有化这个类必须自行创建这个实例:含有一个该类的静态变量来保存这个唯一实例这个类必须自行向系统提供这个实例:对外提供获取该实例的方法...原创 2020-03-22 13:33:50 · 292 阅读 · 0 评论