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

常州哪有做网站上海市建筑建材业网招标公告

常州哪有做网站,上海市建筑建材业网招标公告,做网站学什么代码,网站美工做确认取消对话框组合设计模式(Composite Pattern)是一种结构型设计模式,它允许你将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式使得客户端对单个对象和组合对象的使用具有一致性。 // Component - 图形接口 interface Graphic {void draw()…

组合设计模式(Composite Pattern)是一种结构型设计模式,它允许你将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式使得客户端对单个对象和组合对象的使用具有一致性。

// Component - 图形接口
interface Graphic {void draw();
}// Leaf - 叶子节点:圆形
class Circle implements Graphic {@Overridepublic void draw() {System.out.println("Drawing a Circle");}
}// Leaf - 叶子节点:正方形
class Square implements Graphic {@Overridepublic void draw() {System.out.println("Drawing a Square");}
}// Composite - 组合节点:图形组合
class CompositeGraphic implements Graphic {private List<Graphic> childGraphics = new ArrayList<>();@Overridepublic void draw() {for (Graphic graphic : childGraphics) {graphic.draw();}}// 添加子图形public void add(Graphic graphic) {childGraphics.add(graphic);}// 移除子图形public void remove(Graphic graphic) {childGraphics.remove(graphic);}
}// 客户端代码
public class CompositePatternDemo {public static void main(String[] args) {// 创建叶子节点Graphic circle = new Circle();Graphic square = new Square();// 创建组合节点CompositeGraphic composite = new CompositeGraphic();CompositeGraphic composite2 = new CompositeGraphic();// 构建组合树结构composite.add(circle);composite.add(square);composite2.add(composite);composite2.add(new Circle());// 绘制组合图形composite2.draw();}
}

在这个示例中:

  1. Graphic接口是所有图形组件的共同接口,定义了一个draw方法。
  2. CircleSquare类是叶子节点,实现了Graphic接口的draw方法。
  3. CompositeGraphic类是组合节点,包含了一组Graphic对象,并实现了Graphic接口的draw方法。它能够添加和移除子节点。
  4. CompositePatternDemo类是客户端代码,展示了如何创建和使用组合图形结构。

通过这种方式,客户端代码可以一致地处理单个对象和组合对象。无论是单个圆形、正方形,还是由这些图形组合而成的复杂结构,客户端都可以通过相同的接口进行操作。

http://www.sczhlp.com/news/71787/

相关文章:

  • 网页制作一个网站八个页面咋做展示型网站建设价格
  • 北京市建设资格执业中心网站网站全屏图片怎么做
  • 代做硬件毕业设计网站wordpress维基模板
  • 免费名字设计logo网站微信公众平台账号注册
  • 2025年9月求职APP什么最好用?专业榜单帮大家解疑答惑!
  • 企业级 AI Agent 开发指南:基于函数计算 FC Sandbox 方案实现类 Chat Coding AI Agent
  • 结合Cherry Studio与中转站,打造自己的AIGC图生视频客户端
  • qt 6.8 编译 KdChart
  • 2025全国权威榜单:公众号AI编辑器Top 6(新手速成版)|好看+涨粉神器
  • 肇庆市住房和城乡建设局网站黄冈网站推广都有哪些渠道
  • 家用宽带做网站公路开发公司
  • 网站关键字如何设置用php做企业网站的可行性
  • 海南响应式网站建设方案ueditor是做网站的吗
  • 大朗镇仿做网站如何建设自己的企业网站
  • 长春市做网站哪家好wordpress建站案例视频教程
  • 成品网站和模板建站苏州建站公司 诚找苏州聚尚网络
  • 上海人才网站首页余姚公司建设网站
  • 中海外城市建设有限公司网站重庆企业网站营销设计
  • IDEA使用Git技巧
  • 【OpenCV】7 绘制图形
  • 兰州网站设计厂家推广赚钱拿佣金的软件
  • 中山网站建设工作家乡网站建设
  • 电子商务网站建设与电子支付python网站开发前端
  • 怎么创建网站与网页东莞建站模板大全
  • 开始一个自己的VS Code Extension!
  • 南京建设银行网站缓存图片 wordpress
  • 怎么快速建立一个网站东港建站公司
  • 无锡网站网站建设网站后台是做什么的
  • 环球易购招聘网站建设wordpress 淘宝客 api
  • 旅游网站建设的相关报价wordpress即时