爱上极客-闫庚哲的个人博客 —— 一只程序猿爱上极客

i3geek.com
闫庚哲的个人博客
Java设计模式——策略模式-爱上极客
设计模式

Java设计模式——策略模式

yan阅读(336)评论(0)赞(0)

定义 将可变的部分从程序中抽象分离成算法接口,在该接口下分别封装一系列算法实现,并让它们可以相互替换。策略模式让算法独立于使用它的客户而变化。 功能 分离、抽象出不变的部分形成接口,将算法的实现分别封装,这样会使客户端不受算法改变而受到影响...

Java设计模式——观察者模式-爱上极客
设计模式

Java设计模式——观察者模式

yan阅读(533)评论(0)赞(0)

动机 建立一种对象与对象之间的依赖关系,一个对象发生改变时将自动通知其他对象,其他对象将相应做出反应。这就是观察者模式的模式动机。 定义 对象间的一种一对多的依赖关系。当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 ...

Java设计模式——命令模式-爱上极客
设计模式

Java设计模式——命令模式

yan阅读(508)评论(0)赞(0)

动机 在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时,可以使用命令模式来进行设计,使得请求发送者与请求接收者消除彼此之间的耦合,让对...

Java设计模式——代理模式-爱上极客
设计模式

Java设计模式——代理模式

yan阅读(460)评论(0)赞(0)

定义 为被代理对象提供一种代理,来控制对该对象的访问。(通过引入代理对象来间接访问一个对象) 中介作用,起到隐藏功能或增加功能的效果。 作用 被代理类A  ==方法增强==> 代理类B (增强方法,保护真实类) 比如:火车站售票处(卖...

Java设计模式——外观模式(门面模式)-爱上极客
设计模式

Java设计模式——外观模式(门面模式)

yan阅读(473)评论(0)赞(0)

动机 适配器模式是为了将一个类的接口转换成另一个符合用户期望的接口。现在想改变成一个新的接口,目的是简化接口,用一个统一的接口来访问子系统中的一群接口,这就是外观模式(门面模式)的动机,将一切复杂的都隐藏在背后,只显露出一个干净美好的外观。...

Java设计模式——装饰模式-爱上极客
设计模式

Java设计模式——装饰模式

yan阅读(388)评论(0)赞(0)

动机 对客户透明的方式动态地给一个对象附加上更多的责任(行为),换言之,客户端并不会觉得对象在装饰前和装饰后有什么不同。这就是装饰模式的模式动机。 定义 动态地给一个对象增加一些额外的职责(Responsibility),就增加对象功能来说...

Java设计模式——桥接模式-爱上极客
设计模式

Java设计模式——桥接模式

yan阅读(346)评论(1)赞(0)

动机 有圆形、矩形2个形状,还有红色、绿色2个颜色。如果想实现不同形状和不同颜色的组合,我们有两种方案:第一种,为每一种形状的每一种颜色设计一个类,问题冗余,类过多;第二种,根据实际的需要,对形状和颜色进行组合。 第二种方案就是最佳方案,在...

Java设计模式——适配器模式-爱上极客
设计模式

Java设计模式——适配器模式

yan阅读(604)评论(0)赞(0)

动机 将一个类的接口,通过适配器转换成另外一个期望的接口。(使原本不兼容的接口 而能够相互兼容一起工作)这就是适配器模式的模式动机。 接口A(实际接口)  ===适配器(转换的过程)====》 接口B(不同的,期望的接口) 比如: 三相插头...

Java设计模式——单例模式-爱上极客
设计模式

Java设计模式——单例模式

yan阅读(314)评论(0)赞(0)

动机 有些系统中只有一个实例工作很重要,比如递增ID的生成器,多个线程使用该生成器要保证生成唯一递增的ID,那必然需要调用同一个生成器,如何保证大家调用的都是同一个实例呢? 让类自身保存它的唯一实例,该类不可以实例化出实例,但是对外提供方法...