简单工厂类
工厂类解决了创建对象的问题,通过传入的参数创建不同的对象,这些对象继承了同一个父类,重写父类的方法,解决不同的问题
策略模式 + 简单工厂模式
简单工厂模式可以 用spring的ApplicationContext的 getBean方法 和 @Service取代,创建对象
简单工厂模式 : 根据传入的参数不同创建不同的类
策略模式 抽象类 继承抽象类 重写方法 (继承有助于吸取方法中的公共功能)
开闭原则:
面对需求,对程序是通过新增进行的,而不是修改现有代码。 把频繁变动的代码部分进行抽象
里氏代换:
子类必须能替换掉他们的父类
依赖倒转:
1 高层不应该依赖底层 模块,两个都依赖抽象(高层和底层之间都只依赖抽象和接口)
2 抽象不依赖细节,细节应该依赖抽象
装饰模式
装饰模式 顾名思义 就是 给 核心增加装饰
装饰类继承核心类 ,增加装饰方法 再通过继承装饰类,重写并且继承装饰方法来增加新的装饰(可多次调用)
调用时通过掉用的先后顺序来实现不同的装饰组合
装饰原来的核心类和主要行为。 新增的特殊行为满足在特定情况下执行的特殊需求。 相当与不改变核心类的代码,增加新的特殊逻辑