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

怎么建设网站首页电子商务网站建设与管理相关文献

怎么建设网站首页,电子商务网站建设与管理相关文献,推广软文发布平台,asp.net网站开发教程目录 介绍 实现 优缺点 装饰模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有类的一个包装。这种模式创建了一个装饰类,用来包装原有…

目录

介绍

实现

优缺点


装饰模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有类的一个包装。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。

介绍

意图:动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比生成子类更灵活。

主要解决:我们扩展一个类常使用继承方式实现,由于继承为类引入静态特征,并且随着扩展功能的增多,子类会越来越膨胀。

如何使用:在不想增加很多子类的情况下扩展。

如何解决:将具体功能职责划分,同时继承装饰者模式。

关键代码:1. Component 类充当抽象角色,不应该具体实现。2. 修饰类引用合继承 Component 类,具体扩展类重写父类方法。

使用场景:1. 扩展一个类的功能。2. 动态增加功能,动态撤销。

实现

创建一个 Shape 接口合实现了 Shape 接口的实体类。然后再创建一个实现了 Shape 接口的抽象装饰类 ShapeDecorator,并把 Shape 对象作为它的实例变量。RedShapeDecorator 是实现了 ShapeDecorator 的实体类。DecoratorPatternDemo 类使用 RedShapeDecorator 来装饰 Shape 对象。

 步骤1:

public interface Shape{void draw();
}

步骤2:

public class Rectangle implements Shape{@Overridepublic ovid draw(){System.out.println("draw Rectangle");}
}
public class Cricle implements Shape{@Overridepublic ovid draw(){System.out.println("draw Circle");}
}

步骤3:

public abstract class ShapeDecorator implements Shape{private Shape shape; // 持有一个 Shape 对象public ShapeDecorator(Shape shape){this.shape = shape;}public void draw(){shape.draw();// TODO 根据传进来的具体 Shape 对象,调用对应的 draw 方法}
}

 步骤4:

public class RedShapeDecorator extends ShapeDecorator{public RedShapeDecorator(Shape shape){super(shape);}@Overridepublic void draw(){shape.draw();setRedBorder(shape);}public void setRedBorder(Shape shape){System.out.println("Border Color: Red");}
}

 步骤5

public class DecoratorPatterndDemo{public static void main(String args[]){//TODO 面向抽象层编程// 普通的CircleShape circle = new Circle();System.out.println("Circle with normal Border");        circle.darw();// 红色边界的 CircleShapeDecorator redCircle = new RedShapeDecorator(new Circle); System.out.println("Circle of red Border");redCircle.draw();// 红色边界的 RectangleShapeDecorator redRectangle = new RedShapeDecorator(new Rectangel):System.out.println("Rectangle of red Border");redRectangle.draw();}
}

优缺点

优点:装饰类和被装饰类可以独立发展,不会相互耦合,装饰模式是继承的一个替代模式,装饰模式可以动态扩展一个实现类的功能。

缺点:多层装饰比较复杂。

http://www.15wanjia.com/news/167583.html

相关文章:

  • 网站可不可以做自己的专利广西建设厅网站资质查询
  • 无锡seo网站排名优化wordpress 开源app
  • 毕业设计代做淘宝好还是网站好西丽网站建设
  • 邢台兼职网站有哪些?学做实体店网站
  • 网站备案网站简介网络与新媒体就业方向及前景
  • 如何做试玩类网站wordpress function
  • 手机网站开发 c黄骅港务局
  • 网站整体运营思路什么是asp网站
  • 网站开发要学什么做网站如何
  • 绍兴做网站选哪家中国网站有哪些
  • 淄博市建设监理协会网站做网站的费用入什么科目
  • 人才招聘网站模板html网站建设相关文章
  • 山西建设厅网站首页怎么制作网站vi页面
  • 如何做融资网站广州申请公司注册网站
  • 企业为什么做网站优化推广百度网盘可以做网站吗?
  • 网站联系方式连接怎么做网站从哪里找的
  • 公司网站建设的作用与意义有哪些企业会找人做网站建设
  • 设计专业考研平面素材网站东营新闻联播视频
  • 什么是网站app网络服务合同定义
  • 怎样在设计网站做图赚钱phpcms 网站转移
  • 网站开发职业网站建设合约具体内容
  • 手机网站建设的行情菏泽网的网站建设的联系方式
  • 天津市住房与城乡建设厅网站加强部门网站建设工作总结
  • wordpress添加河南如何优化网站
  • 聊城制作网站网站设计策划书怎么写
  • 营销型网站概念房产投资还有前景吗
  • 手机版网站源码建e网室内
  • 高端建站需要什么条件杭州网站建设科技有限公司
  • 海洋馆网站建设郑州做网站推广
  • 一号网站建设企业网站的搭建流程