随笔分类 - 设计模式
摘要:责任链将处理请求在链条的节点上传递,每到一个节点可被处理或者也可不被处理。 典型的是在servlet中过滤器filter的的处理方式。当request请求或者response请求时,请求经过过滤链上的节点后,又进入下一个节点,直到链尾。 下面以模仿servlet中filter的处理方式(马士兵老师设
阅读全文
摘要:策略模式属于对象的行为模式。每一个策略都有一个共同的接口,从而使得它们可以相互替换。 我理解的策略模式其实本质就是Java的多态思想:用父类型的引用引用子类型对象,这样同样的引用调用同样的方法就会根据子类对象的不同而表现出不同的行为。 这个模式涉及到三个角色: ● 环境(Context)角色:持有一
阅读全文
摘要:命令模式将请求封装到一个对象当中,命令模式是对命令的封装。 命令模式把发出命令的责任和执行命令的责任分割开,A负责发出命令,B负责接收命令并执行。 以一个女孩命令男孩做事情为例: 1.命令接口 2.具体命令 3.具体命令 4.女孩下命令 5.男孩执行命令
阅读全文
摘要:把一个类的接口变换成客户端所期待的另一种接口,从而使原本接口不匹配而无法一起工作的两个类能够在一起工作。 使用步骤: 步骤1: 创建Target接口; 步骤2: 创建源类(Adaptee) ; 步骤3: 创建适配器类(Adapter) 步骤4: 定义具体使用目标类,并通过Adapter类调用所需要的
阅读全文
摘要:如果子类的扩展有两个维度,这时候想解耦和来解决排列组合问题。用组合代替继承。 比如说就礼物这东西而言,可大致抽象分为两类,一种是温暖型的,一种是狂野型的,在礼物的实现上可具体为花或者钻戒或者大炮等等; 在抽象这个维度上可能会扩展,在具体实现上也会扩展,就会形成各式各样的排列组合:温暖的***,狂野的
阅读全文
摘要:动态代理在很多底层框架中都会用得到,比如struts,Spring等都用到了动态代理。 动态代理主要用来做方法的增强,让你可以在不修改源码的情况下,增强一些方法,在方法执行前后做任何你想做的事情, 因为在InvocationHandler的invoke方法中,你可以直接获取正在调用方法对应的Meth
阅读全文
摘要:代理模式: 为某个对象提供一个代理,以控制对这个对象的访问。 代理类和委托类有共同的父类或父接口,这样在任何使用委托类对象的地方都可以用代理对象替代。代理类负责请求的预处理、过滤、将请求分派给委托类处理、以及委托类执行完请求后的后续处理。 静态代理模式: 由程序员创建或工具生成代理类的源码,再编译代
阅读全文
摘要:作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。 单例模式的结构 单例模式的特点: 单例类只能有一个实例。 单例类必须自己创建自己的唯一实例。 单例类必须给所有其他对象提供这一实例。 饿汉式单例类 上面的例子中,在这个类被加载时,静态变
阅读全文
摘要:场景问题 举个生活中常见的例子——组装电脑,我们在组装电脑的时候,通常需要选择一系列的配件,比如CPU、硬盘、内存、主板、电源、机箱等。 需要整体考虑各个配件之间的兼容性。比如:CPU和主板,如果使用Intel的CPU和AMD的主板是根本无法组装的。因为Intel的CPU针脚数与AMD主板提供的CP
阅读全文
摘要:工厂方法模式又叫多态性工厂(Polymorphic Factory)模式,工厂方法模式的用意是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。 那么工厂方法模式是在什么场景下使用呢,下面就以本人的理解举例说明: 相信很多人都做过导入导出功能,就拿导出功能来说。有这么一个需求:XX系统需要
阅读全文
摘要:基本概念: 1)Simple Factory模式属于创建型模式,2)简单工厂模式是由一个工厂(注意是一个!)对象决定创建出哪一种产品类的实例(例如你到肯德基说你要鸡腿,要薯条,要饮料还是,,,这时肯德基是一个工厂,客户端只需要点明自己要什么就行)3)实现方式的实质:由一个工厂类根据传入的参数,动态决
阅读全文
摘要:什么是迭代器模式? 让用户通过特定的接口访问容器的数据,不需要了解容器内部的数据结构。 首先我们先模仿集合中ArrayList和LinkedList的实现。一个是基于数组的实现、一个是基于链表的实现,实现方式各有不同, 为了减少代码的耦合度,面向接口编程。定义Collection接口定义API规范。
阅读全文
摘要:装饰设计模式:对一组对象的功能进行增强时,就可以使用该模式进行问题的解决。 装饰和继承都能实现一样的特点:功能的扩展增强。 有什么区别? 首先有一个继承体系。 Writer |--TextWriter:用于操作文本 |--MediaWriter:用于操作媒体 按照面向对象,可以通过继承对具体的进行功
阅读全文