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

组合模式

组合模式

把一组相似的对象当作一个单一的对象。如:树形菜单

public class Menu {
    String name;

    List<Menu> child;

    public Menu(String name){
        this.name = name;
        child = new ArrayList<>();
    }

    public void addChild(Menu menu){
        child.add(menu);
    }

    public void printmMenu(){
        System.out.println(name);
        child.forEach(Menu::printmMenu);
    }
}

测试:

public class Main {
    public static void main(String[] args) {
        Menu root = new Menu("root");
        root.addChild(new Menu("child1"));
        root.addChild(new Menu("child2"));
        root.printmMenu();
    }
}

http://www.kler.cn/news/318447.html

相关文章:

  • qt--压缩图片的大小
  • 【编程基础知识】什么是DNS域名解析,有啥作用,什么地方会用到
  • 【Diffusion分割】FDiff-Fusion:基于模糊学习的去噪扩散融合网络
  • 深度学习——线性回归
  • PHP探索校园新生态校园帮小程序系统小程序源码
  • 数据采集使用动态代理被拦截的原因是什么?
  • Qt日志输出及QsLog日志库
  • Linux 进程2
  • React UI组件库推荐
  • 手写SpringMVC(简易版)
  • 车载应用的多功能需求与公安、金融等行业的应用特点
  • 信号处理之中值滤波
  • HTML5好看的水果蔬菜在线商城网站源码系列模板2
  • Django 中间件
  • json Date格式化时间偏差8小时,而@JsonFormat注解有无法动态指定时区,如何解决?
  • 从 Oracle 集群到单节点环境(详细记录一次数据迁移过程)之二:生产服务器的备份操作
  • 低代码平台后端搭建-阶段完结
  • iOS - TestFlight使用
  • 梧桐数据库(WuTongDB):MySQL 优化器简介
  • 用工厂模式演示springboot三种注入方式 | @Autowired
  • 图文组合商标部分驳回后优化后初审通过!
  • 通信工程学习:什么是NFVO网络功能虚拟化编排器
  • Oracle日常运维(一线DBA必备技能)(四)-综合巡检
  • arduino ide开发esp32-wroom-32E
  • 新版本大疆上云API指令飞行(drc)模式通讯搭建思路
  • 雷池+frp 批量设置proxy_protocol实现真实IP透传
  • 详解c++:new和delete
  • 【数学二】极限的计算-夹逼准则、单调数列有界准则
  • apach httpd多后缀解析漏洞
  • 第十五章 文件上传