常用设计模式(未完待续)

策略模式

通俗的讲,父类是鸭子Duck的话,子类黑鸭HeiDuck可以继承鸭子的很多共有属性,比如腿啊,能跑啊等等,但是如果出现一些非共有的特性,比如说,飞翔fly(),打电话call()等,独有的特性,用继承的方法就非常不合适了,因为并不是所有的鸭子都会飞或者能打电话的,这时,为了避免由继承引起的代码混乱,可以新建两个接口,定义飞和打电话的功能,如有子类要使用这些特有的方法,实现这个新建的接口就OK了,主要是多用到组合,少用继承的思想。这个其实就是策略模式。

观察者模式

通常有一个主题和多个观察者,当主题发生改变时,观察者会收到通知并自动更新。就像微信公众号,我们关注的大V的文章发生更新,我们会收到通知一样。观察者模式非常重要的一个思想就是松耦合。要想实现这个目的,可以把观察者和主题都定义成接口。

猜你喜欢

转载自blog.csdn.net/philsonzhao/article/details/81254093