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

规划设计公司网站伊春市网站建设

规划设计公司网站,伊春市网站建设,wordpress 积分商城,做网站需要租服务器装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许你动态地将对象添加到现有对象中,以提供额外的功能,同时又不影响其他对象。 实现示例 1.定义一个接口或抽象类,表示被装饰对象的公共接口 //抽…

装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许你动态地将对象添加到现有对象中,以提供额外的功能,同时又不影响其他对象。

实现示例

1.定义一个接口或抽象类,表示被装饰对象的公共接口

//抽象类组件类
public interface Component {void operation();
}

2、创建一个具体的实现类,实现该接口(也就是初始功能的类)

//具体组件类
public class ConcreteComponent implements Component {@Overridepublic void operation() {System.out.println("执行原始操作");//原始功能}
}

3、创建一个装饰器类,实现与被装饰对象相同的接口,并持有一个对被装饰对象的引用

//装饰器类:指向抽象组件引用
public abstract class Decorator implements Component {//引用:抽象组件protected Component component;public Decorator(Component component) {this.component = component;}@Overridepublic void operation() {component.operation();//原始功能}
}

4、创建具体的装饰器类,通过在装饰器类中添加额外的功能来扩展被装饰对象的行为(添加新功能)

//具体装饰器类A
public class ConcreteDecoratorA extends Decorator {public ConcreteDecoratorA(Component component) {super(component);}@Overridepublic void operation() {super.operation();//原始功能System.out.println("添加额外功能A");}
}
//具体装饰器类B
public class ConcreteDecoratorB extends Decorator {public ConcreteDecoratorB(Component component) {super(component);}@Overridepublic void operation() {super.operation();System.out.println("添加额外功能B");}
}

5、使用新功能(既能使用使用原始功能、也能使用新功能)

public class Main {public static void main(String[] args) {Component component=new ConcreteComponent();//执行原始操作component.operation();System.out.println("--------------------------");//执行额外操作A(包含原始操作)Component componentA=new ConcreteDecoratorA(new ConcreteComponent());componentA.operation();System.out.println("--------------------------");//同时执行额外操作A和B(嵌套)Component componentB=new ConcreteDecoratorB(new ConcreteDecoratorA(new ConcreteComponent()));componentB.operation();}
}

输出结果展示
在这里插入图片描述

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

相关文章:

  • 网站建设管理专业介绍阳泉建设公司网站
  • 厦门市集美区建设局网站酒店协会网站集静态模板
  • 唐山市建设局网站WordPress数据库搬迁
  • 上传网站安装教程视频网站如果不续费会怎样
  • 成都 直播网站建设烟台环保网站建设
  • 文山网站建设联系电话漳州做网站开发
  • 网站建站建设价格企业网站的制作与维护
  • 哪个网站做推广好湖南省建设工程造价总站网站
  • 网站建设在线培训网站布局的重要性
  • 南京行业网站建设wordpress php转html
  • 湖北网站建设报价常见的网站建设技术有哪些
  • 四川做网站的企业网站建设 阿里云
  • 中山手机建网站卖鱼的亲戚要我帮忙做网站
  • 全美网站开发河南网站建设详细流程
  • 西安高端网站定制wordpress 密码验证
  • 贵阳网站制作策划wordpress从新安装
  • 做空比特币的网站抖音网站开发
  • 可做免费推广产品的网站有哪些网站实名制认证备案
  • 电商网站系统建设考试新颖的网络营销方式
  • 国外网站推广软件网站创建风格
  • 怎样建设网站内容企业网站价格
  • 做网站后的总结幕墙设计师培训
  • 沈阳建站网页模板网站设计建设企业
  • 沈阳网站建设培训学校做网站的时候怎么把图片往左移
  • 品牌策划网站建设wordpress 界面设计
  • 网站增加外链方法帝国cms怎么做网站
  • 如何用php数据库做网站wordpress 谷歌竞价
  • 邢台网站开发公司班级设计网站建设
  • 百度 移动网站优化聚合页面网站什么时候做
  • 做网站空阿里云网站备案注销