大话设计模式之组合模式
来源:互联网 发布:人工智能取代数据分析 编辑:程序博客网 时间:2024/06/01 07:55
将对象组合成树形结构以表示部分整体的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。
公司管理系统
abstract class company { protected string name; public Company(string name) { this.name = name; } public abstract void Add(Company c); public abstract void Remove(Company c); public abstract void Display(int depth); public abstract void LineOfDuty();}class ConcreteCompany : Company { private List<Company> children = new List<Company>(); public ConcreteCompany(string name) : base(name){} public override void Add(Company c) { children.Add(c); } public override void Remove(Company c){ children.Remove(c); } public override void Display(int depth) { Console.WriteLine(new String('-',depth) + name); foreach(Company componet in children) { componet.Display(depth +2); } } public override void LineOfDuty() { foreach(Company c in children) { componet.LineOfDuty(); } }}// 人力资源部class HRDepartment : Company { public HrDepartment(string name){} public override void Add(Company c){} public override void Remove(Company c){} public override void Display(int depth) { Console.WriteLine(new String('-',depth) + name); } public override void LineOfDuty() { Console.WriteLine("{0} 员工招聘培训管理",name); }}//..// 客户端static void Main(string[] args){ ConcreteCompany root = new ConcreteCompany("北京总公司"); root.Add(new HRDepartment("总公司人力资源部")); ConcreteCompnay comp = new ConcreteCompany("上海华东分公司"); comp.Add(new HRDepartment("华东分公司人力资源部")); root.Add(comp); //以下类似 //组成总公司是由各个分公司以及分公司下面的部门组成的}
阅读全文
0 0
- 大话设计模式之组合模式
- 大话设计模式之组合模式
- 大话设计模式之组合模式
- 大话设计模式笔记之组合模式
- 大话设计模式之组合模式
- 大话设计模式读书笔记之组合模式
- 大话设计-组合模式
- 大话设计模式-组合模式
- 大话设计模式 组合模式
- 大话设计模式-组合模式
- 大话设计模式-组合模式
- 《大话设计模式》java实现之组合模式
- 大话设计模式_组合模式
- 大话设计模式—组合模式
- 大话设计模式19----组合模式
- 大话设计模式-组合模式学习总结
- 大话设计模式8 组合模式 迭代器模式
- 大话设计模式之装饰设计模式
- 1.9 c++_逻辑运算符
- JS计时器
- 7-3 求链式线性表的倒数第K项
- 学习笔记
- io流
- 大话设计模式之组合模式
- caffe学习系列一——图像预处理
- 快捷、方面、好用!令人超赞的ButterKnife8.8.1
- MySQL的常用命令
- Linux探秘之用户态与内核态
- 98DX3236交换机25和27号光口不通的解决办法
- Codeforces Round #340 (Div. 2) E XOR and Favorite Number(莫队算法)
- 2018秋招前端面试回顾(阿里、百度、网易、迅雷、美团等)
- LeetCode week 4 : Median of Two Sorted Arrays