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

  • 相关阅读:
    Selenium自动化Chrome浏览器 在windows下窗口最大化
    Linux下的压缩解压缩命令详解及实例
    Windows下及Mac下的IntelliJ IDEA快捷键
    Missing artifact com.oracle:ojdbc6:jar:10.2.0.4.0问题解决 ojdbc包pom.xml出错
    使用cmd命令进行导入
    导入dmp文件时,需要删除原有ORACLE数据库实例
    HTML编码规范、CSS编码规范
    javascript函数与表达式
    JS中闭包、函数与对象的介绍和用法
    JS中typeof和instanceof用法区别
  • 原文地址:https://www.cnblogs.com/lihuali/p/7483309.html
Copyright © 2011-2022 走看看