![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
nully1
这个作者很懒,什么都没留下…
展开
-
单例模式及实现方法
所谓单例模式,就是指一个类只能实现一个实例,并且提供方法访问获取该实例。单例模式有几种常见的实现方式。1.简单模式,没有实现延迟加载[code="java"]public class Singleton{ private Singleton(){} private Singleton instance = new Singleton(); ...原创 2016-01-25 20:49:22 · 85 阅读 · 0 评论 -
解释器模式interpreter
解释器模式,给定一个语言,定义一个该文法的表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。 使用场景:1.算术表达式、正则表达式...原创 2016-02-02 20:52:18 · 112 阅读 · 0 评论 -
中介者模式
中介者模式是指用一个中介对象来封装一系列对象的交互,中介者对象使对象间不需要显示引用,使其达到松耦合。[img]http://dl2.iteye.com/upload/attachment/0114/9665/308ed0aa-daa7-39e2-ba2c-f291dd851d61.jpg[/img][img]http://dl2.iteye.com/upload/attach...原创 2016-02-02 19:57:40 · 59 阅读 · 0 评论 -
访问者模式Visitor
访问者模式,是在不影响对象结构的情况下,提供对对象内部对象的访问方法。适用于对象的类机构复杂且基本固定,但是内部算法变动较多。结构图[img]http://dl2.iteye.com/upload/attachment/0114/9640/40c6970f-2a81-3f7e-b6ce-867526c21cec.gif[/img]...原创 2016-02-02 17:47:44 · 84 阅读 · 0 评论 -
备忘录模式Memento
备忘录模式Memento,也要快照模式。在不影响封装性的前提下,通过在外部将对象的内部状态进行捕获并存储起来,在适当的时候可以进行还原。发起人提供备份和还原的方法,但是由外部对象维护备份的状态。结构图:[img]http://dl2.iteye.com/upload/attachment/0114/9491/ef19822d-e17c-309f-a37f-3726b146e9f...原创 2016-02-02 10:19:52 · 70 阅读 · 0 评论 -
责任链模式
责任链模式是一种对象的行为模式。在责任链中,一个责任链中的节点包含对下一个责任链链的关联,一个请求从一个节点传到下一个节点直到结束。发出请求的客户端不知道请求会由那个责任链节点来处理。系统中的责任链处理可以进行动态的调整和分配。[img]http://dl2.iteye.com/upload/attachment/0114/9246/ab0c03c3-0e46-3f92-91ea-d6...原创 2016-02-01 10:56:14 · 52 阅读 · 0 评论 -
State状态模式
State状态模式,是指在对象内部的状态改变后,对象的行为也跟着产生变化。使用状态模式将特定状态相关的逻辑分散到一些类的状态类中。使用场景:1.一个对象的行为取决于对象的状态,并且在运行期动态变化。2.一个操作中含有多个分支结构,且分支结构决定于对象的状态。状态模式的结构图:[img]http://dl2.iteye.com/upload/attachment/0114...原创 2016-01-30 17:50:31 · 81 阅读 · 0 评论 -
FlyWeight享元模式
享元模式,就是在系统中如果存在多个相同的对象,那么只需要保存一份共享的对象就可以。Java中String类、数据库连接池、线程池等就是运用享元模式。享元模式中常用工厂模式来维护一个内部对象共享池,如果已经存在于共享池,则从共享池中取出发回,如不存在则新增一个到共享池并返回。享元模式结构图[img]http://dl2.iteye.com/upload/attachment/...原创 2016-01-28 16:08:54 · 82 阅读 · 0 评论 -
Command命令模式
命令模式,是指将来自客户端的请求封装成一个对象,允许系统使用不同的请求把客户端参数化,对请求进行排队或记录日志,并可以提供命令的撤销和重做功能。命令模式,顾名思义来理解即可,就是客户端发布一个命令(也就是“请求”),而这个命令是已经被封装成一个对象的。即这个命令对象的内部可能已经指定了该命令具体被谁负责执行。命令模式的结构[img]http://dl2.iteye.com/up...原创 2016-01-28 15:20:06 · 70 阅读 · 0 评论 -
Facade模式
Facade模式,即门面模式或外观模式,通过在系统中增加一层门面模式来降低客户端系统访问子系统的复杂性。GOF《设计模式》中定义:为子系统中的一组接口提供一个统一接口。Facade模式定义了一个更高层的接口,使子系统使用更加容易。[img]http://dl2.iteye.com/upload/attachment/0114/7850/fa6201e7-86c4-3ff0-a14a-ab9...原创 2016-01-25 21:11:35 · 77 阅读 · 0 评论 -
策略模式(算法模式)
策略模式又叫算法模式,是指将独立的算法进行封装,并可以动态决定使用哪个算法类来改变对象的行为。结构图:[img]http://dl2.iteye.com/upload/attachment/0115/0717/68ce6376-4c59-345c-96c6-e22eeca1b87c.png[/img]使用场景:1.有不同的逻辑来处理,可以抽象出独立的算法类,算法...原创 2016-02-14 17:14:39 · 271 阅读 · 0 评论