摘要:
第二个模式:观察者模式 1.1问题引入 气象站布告栏,对于注册的用户会实时的报告气候的变化,对于取消注册的用户将不会在推送消息。如下面的模式所示: 推出:出版者+订阅者=观察者模式 出版者=“主题(Subject)”, 订阅者=“观察者(Observer)” 总结: 观察者模式:定义了对象之间一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖着都会受到通知并自动更新。 1.2解决方案1 使... 阅读全文
摘要:
第一个模式:策略模式 1.1 问题引入 目标:我们设计了一个鸭子超类,现在有很多鸭子会继承这个超类的行为;同时我们希望有一些鸭子具有不同的行为,比如说能飞翔; 1.2实现方案1: 利用继承来实现Duck的行为。 对于子类中的各种鸭子,如果有不同的行为,需要Override超类的行为; 利用继承的方法会出现以下的结果: 实现方案2:因为并不是所有的鸭子都会叫或者飞翔,所以可以考虑将其提取出来,作... 阅读全文