当前位置: 首页 > news >正文

电子商务网站运营与...网站建设模板图片

电子商务网站运营与...,网站建设模板图片,厦门建站服务,手机版网站开发人员选项责任链模式#xff1a;和上一篇策略模式一样也是行为型模式。创建一个接收者对象的链。这种模式给予请求的类型#xff0c;对请求的发送者和接收者进行解耦。这种模式中#xff0c;通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求#xff0c;那么它…责任链模式和上一篇策略模式一样也是行为型模式。创建一个接收者对象的链。这种模式给予请求的类型对请求的发送者和接收者进行解耦。这种模式中通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求那么它会把相同的请求传给下一个接收者依此类推。 介绍 意图避免请求发送者与接收者耦合在一起让多个对象都有可能接收请求将这些对象连接成一条链并且沿着这条链传递请求直到有对象处理它为止。主要解决问题客户只需要将请求发送到职责链上即可无须关心请求的处理细节和请求的传递总的来说就是职责链将请求的发送者和请求的处理者解耦。关键代码抽象类里面聚合它自己聚合和抽象类我在设计模式的六大原则-CSDN博客有介绍和示例在里面判断是否满足条件如果没达到条件则向下传递。优点1、降低耦合度。它将请求的发送者和接收者解耦。 2、简化了对象。使得对象不需要知道链的结构。 3、增强给对象指派职责的灵活性。通过改变链内的成员或者调动它们的次序允许动态地新增或者删除责任。 4、增加新的请求处理类很方便。缺点1、不能保证请求一定被接收。 2、系统性能将受到一定影响而且在进行代码调试时不太方便可能会造成循环调用。 3、可能不容易观察运行时的特征有碍于除错。 还这个绘制三角形、圆形、矩形图案例子 创建抽象的绘制类。 public abstract class AbstractDraw {public static String TRIANGLE 三角形;public static String CIRCULAR 圆形;public static String RECTANGLE 矩形;protected String shape;//责任链中的下一个接收者protected AbstractDraw nextDraw;public void setNextDraw(AbstractDraw nextDraw){this.nextDraw nextDraw;}public void draw(String shape, String colour){if(this.shape.equals(shape)){drawing(colour);}if(nextDraw !null){nextDraw.draw(shape, colour);}}abstract protected void drawing(String colour);} 创建扩展该绘制类的 三角形责任实体类 public class TriangleDraw extends AbstractDraw{public TriangleDraw(String shape) {this.shape shape;}Overrideprotected void drawing(String colour) {//绘制一个colour颜色的三角形逻辑} } 圆形责任实体类 public class CircularDraw extends AbstractDraw{public CircularDraw(String shape) {this.shape shape;}Overrideprotected void drawing(String colour) {//绘制一个colour颜色的圆形逻辑} } 矩形责任实体类 public class RectangleDraw extends AbstractDraw{public RectangleDraw(String shape) {this.shape shape;}Overrideprotected void drawing(String colour) {//绘制一个colour颜色的距形逻辑} }创建不同类型的责任编排成链 public class ChainPatternDemo {//编排成链static AbstractDraw getChainOfDraw(){AbstractDraw triangleDraw new TriangleDraw(AbstractDraw.TRIANGLE);AbstractDraw circularDraw new CircularDraw(AbstractDraw.CIRCULAR);AbstractDraw rectangleDraw new RectangleDraw(AbstractDraw.RECTANGLE);triangleDraw.setNextDraw(circularDraw);circularDraw.setNextDraw(rectangleDraw);return triangleDraw;}//使用示例public static void main(String[] args) {AbstractDraw drawChain getChainOfDraw();drawChain.draw(AbstractDraw.TRIANGLE,红色);drawChain.draw(AbstractDraw.CIRCULAR,蓝色);drawChain.draw(AbstractDraw.RECTANGLE,绿色);} }
http://www.w-s-a.com/news/849223/

相关文章:

  • 有没有能帮人快速网站备案的机构个人学做网站
  • 凌云县 城市建设 网站西安市建网站
  • 织梦xml网站地图公众号公众平台
  • 长春省妇幼网站做四维学校网站系统破解版
  • 安阳免费搭建自己的网站个人网站做商城会怎样
  • 网站建设专家公司排行网站举报有奖平台
  • 程序员不是做网站的公司装修效果全景图
  • 桥东区住房和建设局网站怎么做网上问卷
  • 做期货要看哪些网站伪装的福祉 wordpress
  • 做网站需要多少费用网站建设需要懂什么语言
  • 网站手机端做app开发商城设计方案
  • 在建设厅网站上查询注销建造师查域名是否注册
  • 企业网站推广方案策划公司网站在国外打开很慢使用cdn好还是国外租用服务器好
  • 龙华o2o网站建设百度不收录什么网站吗
  • 模板搭建网站百度信息流推广
  • 移动端网站制作模板自己做的网站点击赚钱
  • 网站站长如何赚钱wordpress抓取别人网站
  • 做网站媒体专门做产品定制的网站
  • 公司企业网站建设步骤免费asp网站模板
  • 台州企业网站搭建价格做留言的网站
  • 西安网站建设q.479185700強高端网站设计定制公司
  • 网站设计是平面设计吗音频文件放到网站空间里生成链接怎么做
  • seo是对网站进行什么优化可以在哪些网站做翻译兼职
  • 南宁seo网站推广服务网站建设客户分析
  • 网站属于什么公司甜品售卖网站网页设计
  • 如何在宝塔中安装wordpressseo1888网站建设
  • 网站系统cms湖南平台网站建设制作
  • 美团网站怎么做未备案网站加速
  • 通用cms网站wordpress可以商用
  • 阳江网络问政平台 周报济南seo公司案例