zoukankan      html  css  js  c++  java
  • 不一样的组合模式(设计模式十八)

    前言

    组合模式(Composite Pattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。

    也就是搭积木,通过某种组合可以形成一种新结构,这种结构有着某种规律,这里特指树。

    正文

    比如说现在有一个需求,要知道某个领导的所有部下。

    我们知道,公司的管理层一般来说是金字塔形状的。

    那么实现这种需求,可以搭建一个这种模型。

    interface ICommonFun
    {
        void sayName();
    }
    
    class Leader:ICommonFun{
       List<ICommonFun> persons=new List<ICommonFun>();
       string name;
       public leader(string name)
       {
         this.name=name;
       }
       public void addEmployee()
      {
         person.add();
      }
       public void sayName()
      {
         console.write(name);
         foreach(var item in persons)
         {
            item.sayName();
         }
      }
    }
    
     class Employ:ICommonFun{
       string name;
       public Employ(string name)
       {
         this.name=name;
       }
    }
    
    void main()
    {
       Leader leader1=new leader("董事长");
       Leader leader2=new leader("总经理");
       Leader leader3=new leader("秘书");
       leader1.add(leader2);
       leader1.add(leader3);
       Employ employ=new Employ("小兵");
       leader2.add(employ);
       leader1。sayName();
    }
    

    后续

    模型图,补。

  • 相关阅读:
    Spring学习之旅(二)--容器
    Spring学习之旅(一)--初始Spring
    Logback的使用
    DES加解密工具类
    Lombok插件的使用
    from 表单用 GET 方法进行 URL 传值时后台无法获取问题
    组播
    linux头文件路径
    IANA
    6号板获取或放文件
  • 原文地址:https://www.cnblogs.com/aoximin/p/13625762.html
Copyright © 2011-2022 走看看