自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (1)
  • 收藏
  • 关注

转载 中介者模式

中介者模式(Mediator Pattern):1、抽象中介者(Mediator)角色:抽象中介者角色定义统一的接口用于各同事角色之间的通信。      具体中介者(Concrete Mediator)角色:具体中介者角色通过协调各同事角色实现协作行为,因此它必须依赖于各个同事角色。      同事(Colleague)角色:每一个同事角色都知道中介者角色,而且与其他的同事角色

2014-03-24 22:22:49 459

转载 原型模式

原型模式(Prototype Pattern):1、这个模式的核心是一个clone方法,通过这个方法进行对象的拷贝,Java提供了一个Cloneable接口来标示这个对象是可拷贝的,这个接口只是一个标记作用,在JVM中具有这个标记的对象才有可能被拷贝,重写clone()方法。2、对象拷贝时,类的构造函数是不会被执行的。3、浅拷贝和深拷贝问题。内部的数组和引用对象不拷贝,其他的原

2014-03-24 21:52:14 407

转载 状态模式

状态模式(State Pattern):1、Allow an object to alter its behavior when its internal state changes. The object will appear to change its class.也就是说状态模式封装的非常好,状态的变更引起了行为的变更,从外部看起来就好像这个对象对应的类发生了改变一样。

2014-03-12 22:43:32 360

转载 访问者模式

访问者模式(Visitor Pattern):1、业务规则要求遍历多个不同的对象。这本身也是访问者模式出发点,迭代器模式只能访问同类或同接口的数据,而访问者模式是对迭代器模式的扩充,可以遍历不同的对象,然后执行不同的操作,也就是针对访问的对象不同,执行不同的操作。访问者模式还有一个用途,就是充当拦截器(Interceptor)角色。2、符合单一职责原则。3、访问者要访问

2014-03-12 22:17:28 407

转载 责任链模式

责任链模式(Chain Of Responsibility Pattern):1、使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,      直到有一个对象处理他为止。2、责任链模式屏蔽了请求的处理过程,你发起一个请求到底是谁处理的,这个你不用关心,只要你把请抛给责任链的第一个处理者,最终

2014-03-06 22:41:47 393

转载 观察者模式

观察者模式(Observer Pattern)1、观察者模式定义了一个一对多的依赖关系,让一个或多个观察者对象监察一个主题对象。这样一个主题对象在状态上的变化能够通知所有的依赖于此对象的那些观察者对象,使这些观察者对象能够自动更新。2、在Java语言的java.util库里面,提供了一个Observable类以及一个Observer接口,构成Java语言对观察者模式的支持。33

2014-03-05 22:26:25 355

转载 组合模式

组合模式(Composite Pattern):1、将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。2、当发现需求中是体现部分与整体层次结构时,以及你希望用户可以忽略组合对象与单个对象的不同,统一地使用组合结构中的所有对象时,就应该考虑组合模式了。

2014-02-27 23:34:52 317

转载 迭代器模式

迭代器模式(Iterator Pattern):  迭代器模式遍历集合的成熟模式,迭代器模式的关键是将遍历集合的任务交给一个叫做迭代器的对象,它的工作时遍历并选择序列中的对象,而客户端程序员不必知道或关心该集合序列底层的结构。  迭代器模式的结构中包括四种角色。  一、集合:一个接口,规定了具体集合需要实现的操作。  二、具体集合:具体集合石实现了集合接

2014-02-26 23:25:44 396

转载 装饰模式

装饰模式(Decorator Pattern):1、Decorator模式:动态将职责附加到对象上,若要扩展功能,装饰者提供了比继承更具弹性的代替方案。2、设计原则:a. 多用组合,少用继承。利用继承设计子类的行为,是在编译时静态决定的,而且所有的子类都会继承到相同的行为。然而,如果能够利用组合的做法扩展对象的行为,就可以在运行时动态地进行扩展。b. 类应设计的对扩展开

2014-02-25 22:14:29 366

转载 命令模式

命令模式(Command Pattern):public interface Command { public void execute();}public class ConcreteCommand implements Command { private Receiver receiver = null; private String state;

2014-02-25 21:45:40 372

转载 桥梁模式

桥梁模式(Bridge Pattern):1、桥梁模式的用意是“将抽象化与实现化脱耦,使得二者可以独立地变化”,这句话有三个关键词,也就是抽象化,实现化和脱耦。2、业务抽象角色引用业务实现角色或业务抽象角色的部分实现是由业务实现角色完成的。3、耦合,就是两个实体的行为的某种强关联,而将他们的强关联去掉,就是耦合的解脱,或称脱耦,在这里,脱耦是指将抽象化和实现化之间的耦合解脱开,

2014-02-24 23:07:52 466

转载 建造者模式

建造者模式:1、建造者模式使用的场景,一是产品类非常的复杂,或者产品类中的调用顺序不同产生了不同的效能,这个时候使用建造者模式是非常合适。2、在软件系统中,有时候面临着“一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合在一起的算法确相对稳定。如何应对这种变化?如何提供一种“封装机制”来隔离

2014-02-24 22:18:01 416

转载 模板方法模式

模板方法模式(Template Method Pattern):1、模板方法模式就是在模板方法中按照一个的规则和顺序调用基本方法,模板方法是通过汇总或排序基本方法而产生的结果集。

2014-02-23 22:03:58 333

转载 适配器模式

适配器模式:类适配器模式:对象适配器模式:1、将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。优点:2、通过适配器,客户端可以调用同一接口,因而对客户端来说是透明的。这样做更简单、更直接、更紧凑。3、复用了现存的类,解决了现存类和复用环境要求不一致的

2014-02-23 20:56:44 326

转载 门面模式

门面模式:门面模式要求一个子系统的外部与其内部的通信必须通过一个统一的门面(Facade)对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用。1、门面模式的用意是为子系统提供一个集中化和简化的沟通管道,而不能向子系统加入新的行为。2、在门面模式中,通常只需要一个门面类,并且此门面类只有一个实例,换言之它是一个单例类。当然这并不意味着在整个系统里只能有一个门面类,而

2014-02-23 19:56:35 350

转载 抽象工厂模式

抽象工厂模式:1、增加一个产品很容易,例如增加两个产品MeatVeteMammal和MeatVeteBird,再增加一个工厂MeatVeteFactory即可,在符合OCP原则,即开闭原则。2、增加一个产品等级困难,即在产品组,增加一类产品,需要在AnmialFactory中新增一个方法,需要修改与之相关的所有的工厂类。3、在横向扩展容易,纵向扩展困难。4、高内聚,低耦合。

2014-02-20 23:39:16 363

转载 工厂方法

工厂方法(Factory Method Pattern):

2014-02-19 22:00:22 352

转载 多例模式

多利模式:【Multition Pattern】1、一个有上限的多例类可以使用静态变量存储所有的实例。在数目多的时候就要使用静态聚集存储这些实例。2、有状态和没有状态的多例类:多例类对象的状态如果是可以在加载后改变的,那么这种多例对象叫做可变多例对象。反之则为不变多例对象。如果系统建立在诸如EJB和RMI等分散技术之上的,那么多例类有可能会出现数个实例,

2014-02-18 22:47:52 526

转载 单例模式

单例模式:1、构造函数私有2、获取实例方法getInstance3、为防止并发访问时获取的实例出错,类成员变量emperor在声明时直接new一个对象,      getInstance方法为      public synchronized static Emperor getInstance(){return emperor;     }

2014-02-18 22:24:19 332

转载 策略模式

策略模式:优点:1、高内聚低耦合2、扩展性,也就是OCP原则3、策略类可以增加多个,只要修改Context.java就可以。

2014-02-18 21:04:52 299

转载 代理模式

代理模式:1、代理模式主要使用了Java的多态,2、干活的是被代理类(委托类),3、代理类主要是接活,你让我干活,好,我交给幕后的类去干。4、代理类与委托类同一个接口,大家知根知底,你能做啥,我能做啥都清楚的很。

2014-02-18 21:04:09 366

转载 TOMCAT-报错The BASEDIR environment variable is not defined correctly

The BASEDIR environment variable is not defined correctly启动tomcat时报错The BASEDIR environment variable is not defined correctlyThis environment variable is needed to run this program 这坑爹的中间件,害的我搞了

2014-02-18 21:02:38 477

设计模式之禅.pdf

设计模式之禅

2014-03-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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