简单工厂:由工厂产生实现同一接口的对象 只有一个工厂:对一类对象抽象成一个工厂 由工厂产生对象
比如:工厂包含:铅笔,圆珠笔,钢笔
工厂方法:延迟到子类实例 有多个工厂,但每个工厂只能产生一类对象
比如:抽象工厂包含: mysql 和oracle ,mysql工厂产生 mysql驱动,oracle工厂产生oracle驱动
抽象工厂:对多个工厂的抽象 有多个工厂,但每个工厂可以产生一组对象:对一类工厂抽象成一个抽象工厂,
比如:抽象工厂包含:形状和颜色;形状工厂:长,高,圆,颜色工厂:红,黑,蓝
单例模式: 全局唯一
适配器模式:两个不兼容接口之间的桥梁 比如1:读卡器是作为内存卡和笔记本之间的适配器
比如2:media接口 play1实现media 只可以可以播放mp3,AdvancedMedia接口 play2实现AdvancedMedia 可以播放 mp4和vlc
创建一个MediaAdapter 引用AdvancedMedia ,由传入类型(mp3,mp4,vlc),来决定创建哪种类型播放器
策略模式:创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象
比如:Strategy 接口 由加,减,乘,除实现,创建一个context对象 引用Strategy 接口并创建一个执行Strategy 的方法;
观察者模式:当一个对象被修改时,则会自动通知它的依赖对象
比如:被观察者Subject 创建一个list引用,观察者引用 Subject ,观察者放入list集合,被观察者出现变化时 遍历list 通知观察者
装饰者模式:允许向一个现有的对象添加新的功能,同时又不改变其结构
比如:创建类A 创建类B 类B引用类A 并在类A的方法中加入新功能
过滤器模式:开发人员使用不同的标准来过滤一组对象
比如:创建一个 Person 对象、Criteria 接口和实现了该接口的实体类,来过滤 Person 对象的列表
把Person 过滤成 男,女,单身,结婚等结果
拦截过滤器:用于对应用程序的请求或响应做一些预处理/后处理 过滤拦截