概念:
设计模式是我们在 解决问题的时候针对特定问题给出的简洁而优化的处理方案(算法不是设计模式)
1.单例模式:
保证一个类只能产生一个实例,使用构造函数实例化的时候,不管实例化多少次,都是同一个对象,也就是一个构造函数一生只能 new 出一个对象
1.1如何实现:设置一个变量, 通过变量来判断当前的类有没有实例化, 如果已经实例化了,不再实例化,直接返回实例对象。如果没有实例化,实例化。
2.策略模式(开放关闭原则):定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换
开放-关闭原则 - 非常重要:
当需要改变一个程序的功能或者给这个程序增加新功能的时候,可以使用增加代码的方式,但是不允许改动程序的源代码。
开放:针对的是程序扩展或者程序配置项(随意改动)
封闭:封闭的是函数(封装的源代码)(不能改动)
3.观察者模式:通常也被叫做 发布-订阅模式 或者 消息模式
当一个对象的状态发生改变,所有(多个)依赖的状态都将得到通知
4.组合模式:(了解)
组合模式就是用小的子对象来构建更大的对象,而这些小的子对象本身也许是由更小的“孙对象”构成的。
组合模式,就是把几个构造函数的启动方式组合在一起,然后用一个 ”遥控器“ 进行统一调用