2017年12月5日

java中介者模式

摘要: 中介者模式也是用来降低类类之间的耦合的,因为如果类类之间有依赖关系的话,不利于功能的拓展和维护,因为只要修改一个对象,其它关联的对象都得进行修改。如果使用中介者模式,只需关心和Mediator类的关系,具体类类之间的关系及调度交给Mediator就行,这有点像spring容器的作用。先看看图: Us 阅读全文

posted @ 2017-12-05 21:24 范兵 阅读(200) 评论(0) 推荐(0) 编辑

java访问者模式

摘要: 访问者模式把数据结构和作用于结构上的操作解耦合,使得操作集合可相对自由地演化。访问者模式适用于数据结构相对稳定算法又易变化的系统。因为访问者模式使得算法操作增加变得容易。若系统数据结构对象易于变化,经常有新的数据对象增加进来,则不适合使用访问者模式。访问者模式的优点是增加操作很容易,因为增加操作意味 阅读全文

posted @ 2017-12-05 21:20 范兵 阅读(400) 评论(0) 推荐(0) 编辑

java状态模式

摘要: 核心思想就是:当对象的状态改变时,同时改变其行为,很好理解!就拿QQ来说,有几种状态,在线、隐身、忙碌等,每个状态对应不同的操作,而且你的好友也能看到你的状态,所以,状态模式就两点:1、可以通过改变状态来获得不同的行为。2、你的好友能同时看到你的变化。看图: State类是个状态类,Context类 阅读全文

posted @ 2017-12-05 21:10 范兵 阅读(932) 评论(1) 推荐(0) 编辑

java责任链模式

摘要: 接下来我们将要谈谈责任链模式,有多个对象,每个对象持有对下一个对象的引用,这样就会形成一条链,请求在这条链上传递,直到某一对象决定处理该请求。但是发出者并不清楚到底最终那个对象会处理该请求,所以,责任链模式可以实现,在隐瞒客户端的情况下,对系统进行动态的调整。先看看关系图: Abstracthand 阅读全文

posted @ 2017-12-05 21:03 范兵 阅读(12792) 评论(0) 推荐(0) 编辑

java策略模式(及与工厂模式的区别)

摘要: 按一般教程中出现的例子理解: 简单工厂模式:客户端传一个条件进工厂类,工厂类根据条件创建相应的产品类对象,并return给客户端,供客户端使用。即客户端使用的是工厂类生产的产品对象。 策略模式:客户端创建一个Context类对象a(可以看作是工厂模式中工厂类),创建一个策略对象并传参给对象a,然后客 阅读全文

posted @ 2017-12-05 20:56 范兵 阅读(4025) 评论(0) 推荐(0) 编辑

[转]java设计模式

摘要: 设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的, 阅读全文

posted @ 2017-12-05 20:47 范兵 阅读(167) 评论(0) 推荐(0) 编辑

java享元模式

摘要: 讲解1 享元模式:“享”就是分享之意,指一物被众人共享,而这也正是该模式的终旨所在。 享元模式有点类似于单例模式,都是只生成一个对象来被共享使用。这里有个问题,那就是对共享对象的修改,为了避免出现这种情况,我们将这些对象的公共部分,或者说是不变化的部分抽取出来形成一个对象。这个对象就可以避免到修改的 阅读全文

posted @ 2017-12-05 20:45 范兵 阅读(228) 评论(0) 推荐(0) 编辑

java外观模式

摘要: 外观模式是为了解决类与类之家的依赖关系的,像spring一样,可以将类和类之间的关系配置到配置文件中,而外观模式就是将他们的关系放在一个Facade类中,降低了类类之间的耦合度,该模式中没有涉及到接口,看下类图:(我们以一个计算机的启动过程为例) 我们先看下实现类: [java] view plai 阅读全文

posted @ 2017-12-05 20:33 范兵 阅读(176) 评论(0) 推荐(0) 编辑

java代理模式

摘要: 其实每个模式名称就表明了该模式的作用,代理模式就是多一个代理类出来,替原对象进行一些操作,比如我们在租房子的时候回去找中介,为什么呢?因为你对该地区房屋的信息掌握的不够全面,希望找一个更熟悉的人去帮你做,此处的代理就是这个意思。再如我们有的时候打官司,我们需要请律师,因为律师在法律方面有专长,可以替 阅读全文

posted @ 2017-12-05 20:29 范兵 阅读(180) 评论(0) 推荐(0) 编辑

java装饰者模式

摘要: 顾名思义,装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例,关系图如下: Source类是被装饰类,Decorator类是一个装饰类,可以为Source类动态的添加一些功能,代码如下: [java] view plaincop 阅读全文

posted @ 2017-12-05 20:22 范兵 阅读(135) 评论(0) 推荐(0) 编辑

java原型模式

摘要: 用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。很好理解,例如我们构建了一个LIST或Map对象,基于整个对象进行一个新的对象的克隆,而不是地址引用。 例: List<String> lstA=new ArrayList<>(); List<String> lstB=lstA.clon 阅读全文

posted @ 2017-12-05 20:02 范兵 阅读(178) 评论(0) 推荐(0) 编辑

java建造者模式

摘要: 建造者模式在使用过程中可以演化出多种形式: 如果具体的被建造对象只有一个的话,可以省略抽象的Builder和Director,让ConcreteBuilder自己扮演指导者和建造者双重角色,甚至ConcreteBuilder也可以放到Product里面实现。 在《Effective Java》书中第 阅读全文

posted @ 2017-12-05 19:56 范兵 阅读(189) 评论(0) 推荐(0) 编辑

java中观察者模式Observable和Observer

摘要: 如果想要实现观察者模式,则必须依靠java.util包中提供的Observable类和Observer接口 观察者设计模式 现在很多的购房者都在关注着房子的价格变化,每当房子价格变化的时候,所有的购房者都可以观察得到。 实际上以上的购房者就是观察者,他们所关注的房价就是被观察者 其中要求,被观察者需 阅读全文

posted @ 2017-12-05 19:26 范兵 阅读(389) 评论(0) 推荐(0) 编辑

导航