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

公司网站要备案吗2018网站开发最新技术

公司网站要备案吗,2018网站开发最新技术,广府网站建设,如何给网站做右侧导航栏装饰者模式(Decorator Pattern)是一种结构型设计模式,它允许你动态地给一个对象添加一些额外的职责,就增加功能来说,装饰者模式相比生成子类更为灵活。在装饰者模式中,一个装饰类会包装一个对象&#xff08…

装饰者模式(Decorator Pattern)是一种结构型设计模式,它允许你动态地给一个对象添加一些额外的职责,就增加功能来说,装饰者模式相比生成子类更为灵活。在装饰者模式中,一个装饰类会包装一个对象(通常称为被装饰者),并为其添加一些新的功能。

装饰者模式包含以下几个角色:

  1. Component(抽象组件):定义一个对象接口,可以给这些对象动态地添加职责。
  2. ConcreteComponent(具体组件):实现Component接口,是装饰器可以装饰的对象。
  3. Decorator(抽象装饰器):继承自Component,持有对Component对象的引用,并定义与Component接口一致的接口。
  4. ConcreteDecorator(具体装饰器):实现Decorator接口,负责给Component添加职责。

装饰者模式的特点:

  • 装饰者和被装饰者对象有相同的超类型(接口或者抽象类)。
  • 你可以用一个或多个装饰者包装一个对象。
  • 装饰者可以在所委托被装饰者的行为之前与/或之后,加上自己的行为,以达到特定的目的。
  • 对象可以在任何时候被装饰,所以可以在运行时动态地、不限量地用你喜欢的装饰者来装饰对象。

以下是一个简单的Java装饰者模式示例:

// 抽象组件(Component)
public interface Component {void operation();
}// 具体组件(ConcreteComponent)
public class ConcreteComponent implements Component {@Overridepublic void operation() {System.out.println("执行基础操作");}
}// 抽象装饰器(Decorator)
public abstract class Decorator implements Component {protected Component component;public Decorator(Component component) {this.component = component;}@Overridepublic void operation() {if (component != null) {component.operation();}}
}// 具体装饰器A(ConcreteDecoratorA)
public class ConcreteDecoratorA extends Decorator {public ConcreteDecoratorA(Component component) {super(component);}@Overridepublic void operation() {super.operation();addedFunctionA();}public void addedFunctionA() {System.out.println("为操作添加功能A");}
}// 具体装饰器B(ConcreteDecoratorB)
public class ConcreteDecoratorB extends Decorator {public ConcreteDecoratorB(Component component) {super(component);}@Overridepublic void operation() {super.operation();addedFunctionB();}public void addedFunctionB() {System.out.println("为操作添加功能B");}
}// 客户端(Client)
public class Client {public static void main(String[] args) {Component component = new ConcreteComponent();// 使用装饰器A包装ConcreteDecoratorA decoratorA = new ConcreteDecoratorA(component);decoratorA.operation(); // 执行基础操作,并添加功能A// 使用装饰器B包装装饰器AConcreteDecoratorB decoratorB = new ConcreteDecoratorB(decoratorA);decoratorB.operation(); // 执行基础操作,添加功能A,并再添加功能B}
}

在这个例子中,ConcreteComponent是具体组件,它实现了Component接口中的operation()方法。Decorator是抽象装饰器,它持有一个Component对象的引用,并提供了operation()方法的默认实现,即调用被装饰者的operation()方法。ConcreteDecoratorAConcreteDecoratorB是具体装饰器,它们分别添加了不同的功能(addedFunctionA()addedFunctionB())。在客户端代码中,你可以看到如何使用装饰器来动态地给对象添加职责。

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

相关文章:

  • 东莞网站推广模式dw网页制作模板成品免费
  • 二级网站开发 一级关系校园二手网站源码
  • 网站开发公司交易流程做照片有那些网站好
  • 中山网站建设seo135高级网站设计师手写代码篇
  • 深圳品牌网站推广自适应网站建设极速建站
  • 长沙电商网站网络营销logo
  • 做微信推送网站手工制作风筝
  • 网站建设风险评估wordpress to go
  • 网站开发png图标素材如何在网站后台添加商品
  • 科技类网站简介怎么做建设部网站如何下载国标规范
  • 建搜索引擎网站网站后台管理教程
  • 张家港做网站揭西网站建设
  • 做网站 一年需要多少钱多软件网站下载安装
  • 公司做网站设计要注意南京网站制作报价
  • 汽车网站网页设计网络营销宏观环境有哪些
  • 做网站平台的公司淘宝网页设计报告
  • 网站数据库是什么开发一个简单的小程序
  • 东莞网站建设 牛魔网信息系统开发流程
  • 帝国cms 7.2 门户网站模版给厂家做代理上什么网站
  • 高端品牌网站建设有哪些注意事项杭州市建设局网站
  • 网站开发保密协议范本下载justnews主题wordpress
  • 线上做图的网站wordpress 封禁账号
  • 网站规划的流程帝国cms 商城网站视频教程
  • 个人网站设计成品北京 企业展厅设计公司
  • 不忘初心 继续前进网站怎么做营销系统软件
  • 广州木马网站建设公司怎么样销售推广
  • 企业标准网站模板网站设计软件下载
  • 网站开发体系如何做网站连接
  • 合肥微信网站建设有限责任公司与有限公司的区别
  • 网站要怎么做吸客户引眼球网站建设业务需求文档