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

温州微网站制作电话暴雪vp加速器免费

温州微网站制作电话,暴雪vp加速器免费,网站站点地图设计,制作图片模板一.装饰器模式职责: 动态的为一个对象增加新的功能;装饰器是一种用于代替继承的技术,无须通过继承增加子类就能扩展对象的新功能,使用对象的关联关系代替继承关系,更加灵活,同时避免类型体系的快速膨胀。 …

一.装饰器模式职责:

  • 动态的为一个对象增加新的功能;
  • 装饰器是一种用于代替继承的技术,无须通过继承增加子类就能扩展对象的新功能,使用对象的关联关系代替继承关系,更加灵活,同时避免类型体系的快速膨胀。

二.装饰器模式优点:

  • 扩展对象功能比较灵活,不会导致类个数急剧增加;
  • 可以对一个对象进行多次装饰,创作出不同行为的组合,得到功能更加强大的对象;
  • 具体构建类和具体装饰类可以独立变化,用户可以根据需要自己增加新的具体构建子类和具体装饰子类。

三.装饰器模式缺点:

  • 产生很多小对象,大量小对象占据内存,一定程度上影响性能;
  • 装饰模式易于出错,调试排查比较麻烦。

四.装饰器模式总结:

  • 装饰器模式也叫包装器模式
  • 装饰器模式降低系统的耦合度,可以动态的增加或删除对象的职责,并使得需要装饰的具体构建类和具体装饰类可以独立变化,以便增加新的具体构建类和具体装饰类。

五.代码实现

  • 1.抽象组件

/*** 抽象组件角色*/
public interface ICar {/*** 移动*/void move();
}
  • 2.具体组件角色

/*** 具体组件角色(真实角色)*/
public class Car implements ICar{@Overridepublic void move() {System.out.println("陆地跑。。。。");}
}
  • 3.装饰器角色

/*** 装饰器角色*/
public class SuperCar implements ICar{public ICar car;public SuperCar(ICar car) {this.car = car;}@Overridepublic void move() {car.move();}
}
  • 4.具体装饰器角色

/*** 天上飞。。。。*/
public class flyCar extends SuperCar{public flyCar(ICar car) {super(car);}public void fly(){System.out.println("天上飞。。。。");}@Overridepublic void move() {super.move();fly();}
}
/*** 水中游。。。。*/
public class WaterCar extends SuperCar{public WaterCar(ICar car){super(car);}public void swim(){System.out.println("水中游。。。。");}@Overridepublic void move() {super.move();swim();}
}
/*** 自动跑。。。。*/
public class IDCar extends SuperCar{public IDCar(ICar car) {super(car);}public void autoMove(){System.out.println("自动跑。。。。");}@Overridepublic void move() {super.move();autoMove();}
}
  • 5.装饰器调用

/*** 装饰器模式*/
public class App {public static void main(String[] args) {Car car=new Car();car.move();System.out.println("=======添加新功能:飞。。。。");flyCar fly=new flyCar(car);fly.move();System.out.println("=======添加新功能:飞、。。。。游、、、、");WaterCar water=new WaterCar(fly);water.move();}
}



更多设计模式学习:

          设计模式(1):介绍
          设计模式(2):单例模式
          设计模式(3):工厂模式
          设计模式(4):建造者模式
          设计模式(5):原型模式
          设计模式(6):桥接模式
          设计模式持续更新中…

http://www.yayakq.cn/news/195879/

相关文章:

  • 做网站的整体风格确定方式高端品牌全屋定制
  • 网站怎么做商家定位合肥中科大网站开发
  • 做我女朋友好吗网站网站游戏入口
  • 网站开发人员岗位要求积玉桥网站建设
  • 优秀购物网站建设凡科官方网
  • 东莞品牌网站建设服务选thinkphp还是wordpress
  • 网站宽度 超宽青岛网站建设公司招聘
  • 邢台网站优化建设二级域名ip查询
  • 高端的平面设计网站建设项目公示网
  • 宾馆网站如何做会计分录简述电子商务网站开发流程
  • 免费学习做网站wordpress上篇下篇代码
  • 装修公司做网销的网站wordpress网校
  • 购买网站域名空间做关于什么样的网站好
  • 甘肃庆阳网seo优化几个关键词
  • 广州网站建设流程wordpress 开发 表单
  • 中国十大黄页网站排行榜wordpress相册api
  • 统计局网站群建设方案如何快速创建网站
  • 网站建设是广告么电商小程序模板
  • 寻网站开发人员合作wordpress去掉作者信息
  • 北京平台网站建设抖音seo公司帝搜平台
  • 中国联通网站建设与维护石家庄做网站好的公司推荐
  • 烟台做网站公司wordpress数据库数据导出
  • 首饰网站建设策划案wordpress发布的文章
  • 宜昌网站建设多少钱蒙古文网站建设
  • 深圳搭建p2p网站做软装素材从哪些网站找
  • 网站域名登陆地址服务专业制作网页
  • 机构协会公司网络优化方案
  • 石油大学网页设计与网站建设动漫制作技术
  • 东莞住房和建设局网站社交app开发
  • ppt模板有哪些网站深圳广告设计策划公司