设计模式之命令模式

定义 将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。 结构 客户端(Client):创建一个具体命令(ConcreteCommand)对象并确定其接收者。 命令(Command):声明了一个给所有具体命令类的抽象接口。 具体命令(...

2016-10-31 00:11:21

阅读数:207

评论数:0

设计模式之适配器模式

适配器模式将一个类的接口,转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。 现在,我们知道,这个模式可以通过创建适配器进行接口转换,让不兼容的接口变成兼容。这可以让客户从实现的接口解耦。如果在一段时间之后,我们想要改变接口,适配器可以将改变的部分封装起来,...

2016-10-30 23:01:48

阅读数:201

评论数:0

设计模式之工厂模式

工厂方法模式定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。 工厂方法模式能够封装具体类型的实例化。看看下面的类图,抽象的Creator提供了一个创建对象的方法的接口,也成为“工厂方法”。在抽象的Creator中,任何其他实现的方法,都可能使用...

2016-10-30 18:47:24

阅读数:230

评论数:0

设计模式之模板方法模式

定义: 模板方法模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 这个模式是用来创建一个算法的模板。什么是模板?模板就是一个方法。更具体的说,这个方法将算法定义成一组步骤,其中的任何步骤都可以是抽象的...

2016-10-30 17:52:02

阅读数:253

评论数:0

设计模式之装饰者模式

概述 装饰者模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 特点 (1).装饰者和被装饰者对象有相同的超类型。 (2).你可以用一个或多个装饰者包装一个对象。 (3).既然装饰者和被装饰者对象有相同的超类型,所以在...

2016-08-28 01:03:05

阅读数:1616

评论数:0

设计模式之观察者模式

观察者模式定义了对象之间的一对多依赖,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。 观察者模式有时又被称作发布/订阅模式。 如图所示。 主题和观察值定义了一对多的关系。观察者依赖于此主题,只要主题状态一有变化,观察者就会被通知。 以包含Subject和Obs...

2016-08-07 23:55:38

阅读数:2001

评论数:7

设计模式之单例模式

定义: 确保一个类只有一个实例,并提供一个全局访问点。 简介: 单例模式是设计模式中最简单的形式之一。这一模式的目的是使得类的一个对象成为系统中的唯一实例。要实现这一点,可以从对其进行实例化开始。因此需要用一种只允许生成对象类的唯一实例的机制,阻止所有想要生成对象的访问。使用工厂方法来限...

2016-07-16 23:42:47

阅读数:1770

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭