设计模式
baother0
这个作者很懒,什么都没留下…
展开
-
常用设计模式之装饰模式
装饰模式又名包装(Wrapper)模式 装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代的方案。 装饰模式以对客户端透明的方式动态的给一个对象附加上更多的责任。换言之,客户端并不会感觉对象在装饰前和装饰后有什么不同。 装饰模式可以在不创造更多的子类的情况下,将对象的功能加以扩展。(继承也可以实现,但是继承是静态的关系,而装饰模式对象具有多少功能取决于怎么用,是动态的关系)。原创 2012-11-30 21:34:31 · 393 阅读 · 0 评论 -
设计模式之观察者模式
设计模式之观察者模式 观察者模式就是多个观察者对象监视一个主题的对象,当主题对象的内部的状态发生改变时,就通知监视该主题对象的诸多的观察对象,是观察对象的状态也发生相应的改变。 观察者模式的组成: 抽象的观察角色:一般用一个接口或者抽象的类来实现,其中定义了观察者必须实现的方法。 主题角色:维护一个集合,存放所有的观察者对象的引用,可以删除观察者,可以添加观察者,如果一个对象想要成为被观察原创 2012-11-30 21:40:36 · 415 阅读 · 0 评论 -
设计模式之单例模式
设计模式之单例模式 单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。 单例模式要点 显然单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。在下面的对象图中,有一个"单例对象",而"客户甲"、"客户乙" 和"客户丙"是单例对象的三个客户对象。可以看到,原创 2012-11-30 21:41:28 · 382 阅读 · 0 评论 -
常用的设计模式之代理模式
的作用是:为其他对象提供一种代理以控制这个对象的访问。 在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 我们可以举个列子: 你想请某个领导干件事,可能你不能直接的联系领导,你可以通过领导的秘书,在让秘书把你完成具体的操作。 代理模式一般涉及到的角色有: 抽象角色:声明真实对象和代理对象的公共的接口。 代理角色:代理对象角色内部原创 2012-11-30 21:33:35 · 423 阅读 · 0 评论 -
The Chain Of Responsibility Pattern
Chain of Responsibility in the Real World The idea of the Chain Of Responsibility is that it avoids coupling the sender of the request to the receiver, giving more than one object the opportunity转载 2013-11-26 19:38:39 · 953 阅读 · 0 评论 -
Java之代理
一.概念 代理是什么呢?举个例子,一个公司是卖摄像头的,但公司不直接跟用户打交道,而是通过代理商跟用户打交道。如果:公司接口中有一个卖产品的方法,那么公司需要实现这个方法,而代理商也必须实现这个方法。如果公司卖多少钱,代理商也卖多少钱,那么代理商就赚不了钱。所以代理商在调用公司的卖方法后,加上自己的利润然后再把产品卖给客户。而客户部直接跟公司打交道,或者客户根本不知道公司的存在,然而客户最终却买转载 2013-11-27 21:57:51 · 907 阅读 · 0 评论 -
设计模式之策略模式
策略模式(Strategy): 策略模式的定义: --------定义一组算法,将每个算法都封装起来,并且使它们之间可以互换。 --------策略模式使这些算法在客户端调用它们的时候能够互不影响的变化。 策略模式的意义是: --------策略模式使开发人员能够开发出由许多可替换的部分组成的软件,并且各个部分之间都是弱连接的关系。 --------弱连接的特性使软件具有更强大的可扩展原创 2012-11-30 21:38:50 · 429 阅读 · 0 评论