zoukankan      html  css  js  c++  java
  • 设计模式之结构型(2)-组合模式(Composite)

    (一)定义:组合多个对象形成树形结构以表示为“部分--整体”的结构层次。组合模式使得用户对单个对象和组合对象的使用具有一致性。

    1.1  UML类图:

    image

    1.2  类与对象间的关系
    Component
    :部件抽象接口。
      ①  为组合的对象声明接口。
      ②  某些情况下,实现从此接口派生出所有类共有的默认行为。
      ③  定义一个接口可以访问及管理它的多个子部件(GetChild)。
      ④  如果必要,也可以在递归结构中定义一个接口访问它的父节点,并且实现它。
    Leaf:叶部件
      ①  在组合中表示叶节点对象,叶节点没有子节点。
      ②  定义组合中原接口对象的行为。
    Composite:组合类
      ①  定义有儿子节点(子部件)的部件的行为
      ②  存储儿子节点(子部件)
      ③  在Component接口中实现与子部件相关的操作

    典型调用顺序图

    组合模式-源码

    源码分析:

    1232017-09-07_115208

    (二) 项目案例分析    源码下载
    案例描述:假设某个公司的OA系统要计算员工和部门工资。部门有部门主管,其他下有多名员工。既要计算个体员工工资,又要计算部门开支公司。图形如下
    1111

  • 相关阅读:
    QAU 18校赛 J题 天平(01背包 判断能否装满)
    滚动数组
    Leapin' Lizards HDU
    Sabotage UVA
    Food HDU
    两个Button 加通一个手势,那么 第一个的就失效了,
    终于把聊天记录保存到数据库当中去了,
    添加好友,
    XEP 0055 (Jabber search) with iphone SDK
    手机ip,
  • 原文地址:https://www.cnblogs.com/lihuali/p/7483309.html
Copyright © 2011-2022 走看看