随笔分类 -  JAVA设计模式

摘要:命令模式定义 将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和回复的功能。 Receive接收者角色 该角色就是干活的角色,命令传递到这里是应该被执行的。 Command命令角色 需要执行的所有命令都在这里声明。 具体的Command类 阅读全文
posted @ 2017-08-16 21:38 Topze 阅读(95) 评论(0) 推荐(0) 编辑
摘要:中介者模式定义 用一个中介对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 Mediator抽象中介者角色 抽象中介者角色定义统一的接口,用于各同事角色之间的通信。 Concrete Mediator 具体中介者角色 具体中介者角色通 阅读全文
posted @ 2017-08-16 20:26 Topze 阅读(163) 评论(0) 推荐(0) 编辑
摘要:原型模式定义:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 原型模式的核心是一个clone方法,通过该方法进行对象的拷贝。 代码实例 原型模式的优点:性能更加优良,逃避了构造函数的约束。 在原型模式中,克隆的对象不会执行构造函数。因为clone方法的原理是从内存中(具体地说就是堆 阅读全文
posted @ 2017-04-09 11:27 Topze 阅读(185) 评论(0) 推荐(0) 编辑
摘要:代理模式:为其他对象提供一种代理以控制对这个对象的访问。 最简单的代理模式,分为三种角色: 抽象主题角色:代理类与被代理共同实现的接口,内部定义了最普通的业务类型。 具体主题角色:被代理类,具体实现接口的方法。 代理主题角色:代理类,继承主题接口,并生成与被代理类方法名一致的方法,并且调用被代理类的 阅读全文
posted @ 2017-04-06 23:02 Topze 阅读(151) 评论(0) 推荐(0) 编辑
摘要:建造者模式(生成器模式)定义:将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 建造者模式中的4个角色: Product产品类 通常是实现了模板方法模式,也就是有模板方法和基本方法。 Builder抽象建造者 规范产品的组建,一般是由子类实现。 ConcreteBuild 阅读全文
posted @ 2017-04-05 22:35 Topze 阅读(318) 评论(0) 推荐(0) 编辑
摘要:模板方法模式定义:定义一个操作中的算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 抽象类的父类,父类中定义了基本方法,模板方法和钩子方法。 基本方法:父类中定义,在子类中实现。 模板方法:父类中实现,调用基本方法,子类继承。 钩子方法:在父类中 阅读全文
posted @ 2017-04-05 21:02 Topze 阅读(158) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示