美文网首页
12_组合模式

12_组合模式

作者: 0x70e8 | 来源:发表于2018-03-20 20:04 被阅读0次

1.是什么

组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。掌握组合模式的重点是要理解清楚 “部分/整体” 还有 ”单个对象“ 与 "组合对象" 的含义。 组合模式可以让客户端像修改配置文件一样简单的完成本来需要流程控制语句来完成的功能。 经典案例:系统目录结构,网站导航结构等。

2.有什么用

组合模式让你可以优化处理递归或分级数据结构。有许多关于分级数据结构的例子,使得组合模式非常有用武之地。关于分级数据结构的一个普遍性的例子是你每次使用电脑时所遇到的:文件系统。文件系统由目录和文件组成。每个目录都可以装内容。目录的内容可以是文件,也可以是目录。按照这种方式,计算机的文件系统就是以递归结构来组织的。如果你想要描述这样的数据结构,那么你可以使用组合模式Composite。

3.怎么用

示例包含子菜单的菜单类,是一个树形结构,每一层都可以当做一个菜单来对待。

public interface IMenu {

    void showMenu();
}

import java.util.List;

public class Menu implements IMenu {
    private String name;

    public Menu(String name) {
        this.name = name;

    }

    private List<IMenu> childMenu;

    @Override
    public void showMenu() {
        System.out.println(this.name);

    }

    /**
     * @return the childMenu
     */
    public List<IMenu> getChildMenu() {
        return childMenu;
    }

    /**
     * @param childMenu
     *            the childMenu to set
     */
    public void setChildMenu(List<IMenu> childMenu) {
        this.childMenu = childMenu;
    }

}

相关文章

  • 12_组合模式

    1.是什么 组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使...

  • 2022.6.24(晴)

    今天值班。歌咏比赛。12_

  • 设计模式:组合模式 职责链模式

    组合模式 职责链模式 组合模式 组合模式将对象组合成树形结构,以表示“部分-整体”的层次结构。 在组合模式的树形结...

  • 第4章 结构型模式-组合模式

    一、组合模式简介 二、组合模式的优缺点 三、组合模式的使用场景 、组合模式的实例

  • 组合模式(统一叶子与组合对象)

    目录 从生活场景出发,映射组合模式 组合模式的理论概念 组合模式的实现 组合模式在源码中的应用 组合 “优于” 继...

  • 组合模式

    1. 组合模式 1.1 组合模式的定义 组合模式(Composite): 又称部分-整体模式, 将对象组合成树形结...

  • 组合模式

    设计模式系列7--组合模式 《Objective-c 编程之道 iOS 设计模式解析》 - 组合模式 常见组合模式...

  • 设计模式 | 组合模式及典型应用

    本文的主要内容: 介绍组合模式 示例 组合模式总结 源码分析组合模式的典型应用java.awt中的组合模式Java...

  • 组合模式

    一、组合模式介绍 二、组合模式代码实例

  • 组合模式

    设计模式之组合模式 什么是组合模式? 组合模式允许你将对象组合成树形结构来表现”部分-整体“的层次结构,使得客户以...

网友评论

      本文标题:12_组合模式

      本文链接:https://www.haomeiwen.com/subject/xsfiqftx.html