首页 > 其他 > 详细

观察者模式,单例模式和工厂模式

时间:2019-08-14 15:51:30      阅读:80      评论:0      收藏:0      [点我收藏+]

持续更新中...

观察者模式:

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!