持续更新中...
观察者模式:
(https://blog.csdn.net/colinandroid/article/details/81113013)
观察者模式:定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖它的对象都会得到通知并自动更新。
Subject:就是“被观察”的角色,它将所有观察者对象的引用保存在一个集合中。
(1)保存注册的观察者对象
(2)注册观察者对象
(3)注销观察者对象
(4)通知所有注册的观察者对象
Observer:是抽象的“观察”角色,它定义了一个更新接口,使得在被观察者状态发生改变时通知自己。
ConcreteObserver:具体的观察者。
单例模式:
(https://blog.csdn.net/q_all_is_well/article/details/82377917)
实现特点:
(1)私有化该类的构造函数
(2)通过new在本类中创建一个本类对象
(3)定义一个公有的方法,将在该类中所创建的对象返回
实现方法:
(1)单例模式的饿汉式
(2)单例模式懒汉式双重校验锁
(3)内部类
工厂模式:
(https://blog.csdn.net/u012156116/article/details/80857255)
工厂方法模式定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类
(1)简单工厂模式:一个工厂+一个运算基类+n个具体的运算类
(2)工厂模式:简单工厂+n个具体的工厂(解决简单工厂的高耦合,缺点是每增加一个产品类,就需要增加一个对应的工厂类,增加了额外的开发量)
(3)抽象工厂模式:(解耦,例业务逻辑与数据访问的解耦)(https://cloud.tencent.com/developer/article/1394271)
原文:https://www.cnblogs.com/XZDSF/p/11352335.html