![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
zjxht62
这个作者很懒,什么都没留下…
展开
-
观察者模式----用学生上课的例子讲
定义: 定义了对象之间一对多的依赖关系,当一个对象状态发生改变,其他的依赖于它的对象都能得到通知被被自动更新 结构: 指导思想: 主题维护所有的观察者,抽象观察者 解决的问题: 对象之间一对多的关系,一个对象的状态发生改变,依赖它的对象都将得到通知 实现方式: 在主题里维护一个观察者的列表,将观察者抽象出来,主题只需要知道对象是个观察者就行,就能调用更新方法 举例: 对于上课的场景,老师就是一种主题,学生就是观察者,当老师说要提问了,学生就接收到通知。 /** * 观察者接.原创 2021-06-03 15:18:39 · 129 阅读 · 0 评论 -
策略模式----用摊煎饼的例子讲
定义: 定义了算法族,分别封装起来。让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。 结构: 指导思想: 使用组合而不是继承 解决的问题: 在有多种算法相似的情况下,使用 if...else 所带来的复杂和难以维护。 实现方式: 将可替换的算法抽象成一个接口,各个具体的算法实现它。在使用算法的类里面定义一个属性来保存算法接口。在真正使用算法的时候,委托给对应的具体算法进行操作。 举例: 对于煎饼摊来说,有做煎饼这种算法,但是可能会有山东煎饼,天津煎饼...原创 2021-05-19 15:32:22 · 316 阅读 · 0 评论