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

东莞网站建设公司电话seo公司外包

东莞网站建设公司电话,seo公司外包,15年做哪个网站能致富,建设哪里有文章目录 Java 设计模式之组合模式概述UML代码实现 Java 设计模式之组合模式 概述 组合模式(Composite):将对象组合成树形结构以表示’部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。优点:客户端可以统一处理单个对象…

文章目录

  • Java 设计模式之组合模式
    • 概述
    • UML
    • 代码实现

Java 设计模式之组合模式

概述

  • 组合模式(Composite):将对象组合成树形结构以表示’部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。
  • 优点:客户端可以统一处理单个对象和组合对象。支持递归组合,简化了复杂结构的处理。

UML

在这里插入图片描述

  • Component:抽象了或接口,定义叶子节点和组合节点的共同行为
  • Leaf:叶子节点,表示没有子组件。
  • Composite:组合节点,可以包含其他子组件。

代码实现

定义组件:

public abstract class Component {protected String name;public Component(String name) {this.name = name;}/*** 显示** @param level 第几层级*/public abstract void display(int level);
}

定义叶子节点:

public class File extends Component {public File(String name) {super(name);}@Overridepublic void display(int level) {System.out.println("-".repeat(level * 4) + "File:" + name);}
}

定义组合节点:

public class Directory extends Component {private ArrayList<Component> children = new ArrayList<>();public Directory(String name) {super(name);}public void addComponent(Component component) {children.add(component);}public void removeComponent(Component component) {children.remove(component);}@Overridepublic void display(int level) {System.out.println("-".repeat(level * 4) + "Directory:" + name);for (Component component : children) {component.display(level + 1);}}
}

使用:

public class Client {public static void main(String[] args) {File file1 = new File("file1.txt");File file2 = new File("file2.txt");File file3 = new File("file3.txt");File file4 = new File("file4.txt");Directory root = new Directory("root");Directory dir1 = new Directory("dir1");Directory dir2 = new Directory("dir2");root.addComponent(file1);root.addComponent(dir1);dir1.addComponent(file2);dir1.addComponent(dir2);dir2.addComponent(file3);dir2.addComponent(file4);root.display(0);}
}

输出:

Directory:root
----File:file1.txt
----Directory:dir1
--------File:file2.txt
--------Directory:dir2
------------File:file3.txt
------------File:file4.txt
http://www.dtcms.com/wzjs/170406.html

相关文章:

  • 网站开发 例子可以直接进入的舆情网站
  • 新疆分享是官方网站吗?百度指数数据分析平台官网
  • 桂林网站建设官网wordpress建站公司
  • 创建网站的视频站长之家排行榜
  • 企业网站优化怎么提高关键词排名长春seo外包
  • 如何用个人电脑做网站独立站建站平台
  • 学校二级网站建设自查情况百度云群组
  • 有做二手厨房设备的网站吗西地那非片能延时多久每次吃多少
  • 中国十大公司兰州网络优化seo
  • 北京手机网站开发如何制作付费视频网站
  • 网站的搜索功能怎么做网络推广营销软件
  • 万齐网站建设做网站好的网站建设公司
  • 高端网站设计费用创量广告投放平台
  • 长春建站培训seo友情链接
  • 搭建网站 赚钱郑州搜索引擎优化
  • 连云港做网站的短视频推广渠道
  • 新手做网站推荐搜索引擎营销实训报告
  • 做阀门的网站百度竞价托管哪家好
  • 广东官网网站建设品牌品牌互动营销案例
  • 网站制作背景百度指数特点
  • 建设b2b网站要求怎么做网站教程
  • 万能图片编辑器天津seo推广软件
  • 传智播客 网站开发百度互联网营销顾问
  • 网站的管理更新维护5000元网站seo推广
  • 网站后台管理系统数据库贵阳搜索引擎排名推广
  • 工信部网站备案信息查询网店运营工资一般多少
  • wordpress app 读者关键词优化网站排名
  • asp企业网站设计微信朋友圈广告推广
  • 厦门seo公司网站广告联盟点击赚钱平台
  • 彩票网站怎么做系统全球最大的磁力搜索引擎