代码如下:

#include <iostream>
#include <string>using namespace std;//银行工作人员
class BankWorker
{public:void saveService(){cout << "办理存款业务" << endl;}void payService(){cout << "办理支付业务" << endl;}void transferService(){cout << "办理转账业务" << endl;}
};//中层模块
void doSaveBussiness(BankWorker *worker)
{worker->saveService();
}void doPayBussiness(BankWorker *worker)
{worker->payService();
}void doTransferBussiness(BankWorker *worker)
{worker->transferService();
}void test01()
{BankWorker *worker = new BankWorker;doSaveBussiness(worker);doPayBussiness(worker);doTransferBussiness(worker);
}int main()
{test01();return 0;
}

依赖倒转原则

代码如下:

#include <iostream>
#include <string>using namespace std;class AbstractWorker
{public:virtual void doBusiness() = 0;
};class SaveBankWorker :public AbstractWorker
{public:virtual void doBusiness(){cout << "办理存款业务" << endl;}
};class PayBankWorker :public AbstractWorker
{public:virtual void doBusiness(){cout << "办理支付业务" << endl;}
};class TransferBankWorker :public AbstractWorker
{public:virtual void doBusiness(){cout << "办理转账业务" << endl;}
};//中层模块
void doNewBusiness(AbstractWorker *worker)
{worker->doBusiness();delete worker;
}void test01()
{doNewBusiness(new TransferBankWorker);doNewBusiness(new PayBankWorker);doNewBusiness(new SaveBankWorker);
}int main()
{test01();return 0;
}

测试结果:

[设计模式]依赖倒转原则相关推荐

  1. Java设计模式——依赖倒转原则

    一.什么是依赖倒转原则? 依赖倒转原则讲的是,要依赖于抽象,不要依赖于具体. 实现"开-闭"原则的关键是抽象化,并且从抽象化导出具体化实现."开-闭"原则是面向 ...

  2. Java设计模式 - 依赖倒转原则

    文章目录 1. 违反依赖倒转原则 2. 遵守依赖倒转原则 3. 依赖关系传递的3种方式 3.1 接口传递 3.2 构造方法传递 3.3 setter方法传递 4. 依赖倒转原则的注意事项和细节 Dep ...

  3. 设计模式--依赖倒转原则

    依赖倒转原则:依赖于抽象类(接口类),不依赖于具体实现类 即:高层业务逻辑依赖抽象类,具体实现类 依赖于抽象业务逻辑 高层逻辑为:软件设计具体需求(eg:制造一台电脑) 抽象层为:很多抽象类(eg:电 ...

  4. 23种设计模式-依赖倒转原则

    概念: 依赖倒转原则(Dependence Inversion Principle)是指: 1) 高层模块不应该依赖低层模块,二者都应该依赖其抽象 2) 抽象不应该依赖细节,细节应该依赖抽象 3) 依 ...

  5. Java设计模式——依赖倒转原则(实例)

    1.基本介绍 高层模块不应该依赖低层模块,二者都应该依赖其抽象 抽象不应该依赖细节,细节应该依赖抽象 依赖倒转的中心思想是面向接口编程 依赖倒转原则是基于这样的设计理念:相对于细节的多变性,抽象的东西 ...

  6. 设计模式依赖倒转原则

  7. 依赖倒转原则_Java设计模式的七大原则

    Java设计模式的七大原则 里氏代换原则 里氏代换原则是对"开-闭"原则的补充.实现"开-闭"原则的关键步骤就是抽象化.而基类与子类的继承关系就是抽象化的具体实 ...

  8. Java设计模式之设计的6大原则(开闭原则,里氏代换原则,依赖倒转原则,接口隔离原则,最少知道原则,合成复用原则)

    1. 开闭原则 核心思想:一个对象对外扩展开发,对修改关闭 意思就是:对类的改动是通过增加代码进行的,而不是修改现有的代码. 也就是说软件开发人员一旦写出了可以运行的代码,就不应该去改动它,而是要保证 ...

  9. 【设计模式】依赖倒转原则

    依赖倒转原则 依赖倒转原则是指的特点有∶ 高层模块不应该依赖低层模块,二者都应该依赖其抽象 抽象不应该依赖细节,细节应该依赖抽象 依赖倒转(倒置)的 中心思想 是面向接口编程 依赖倒转原则是基于这样的 ...

最新文章

  1. muduo 与 boost asio 吞吐量对比
  2. 如何管理大型呼叫中心
  3. Linux python impala/sasl/thrift-sasl command not found
  4. 《Java程序员,上班那点事儿》书名的由来
  5. 鸡啄米vc++2010系列11(非模态对话框的创建)
  6. 干货推荐 | 如何设计按钮?
  7. C++的类和C里面的struct有什么区别
  8. 实现call和apply
  9. dedecms 找后台总结_总结找到后台路径的N总思路方法
  10. git tag 的基本用法
  11. Spark 整合ElasticSearch
  12. Theano学习笔记:Theano的艰辛安装体验
  13. php emoji base64,PHP处理字符中的emoji表情
  14. 平面设计(板式设计与构图篇)
  15. 3D全息投影 大家可以自己动手制作
  16. mapgis java二次开发_mapgis7.0二次开发小试牛刀
  17. CMOS与TTL电路的区别
  18. 《电商后台系统产品逻辑解析》学习笔记
  19. 令人拍案叫绝的 Wasserstein GAN,彻底解决GAN训练不稳定问题
  20. 超声波测距HY-SRF05模块的学习总结

热门文章

  1. linux之通过tail命令动态跟踪日志文件里面的末尾信息
  2. linux之写C代码出现warning: format not a string literal and no format arguments [-Wformat-security]
  3. 数据结构-Hash总结(二)
  4. C语言atoi()函数:将字符串转换成int(整数)和sprintf和memset
  5. 六、WebApp 二手信息站点页面制作(IVX 快速开发教程)
  6. 几何学中关于相交圆的这个定理,你还记得吗?
  7. 年轻人不讲武德有多可怕?
  8. 暴击!被初中生碾压智商!这份被国家数学集训队采用的初中奥数资料究竟有多厉害?...
  9. 每日一笑 | 一些关于学编程的领悟
  10. 967c语言程序设计是什么,2018年湖南师范大学数学与计算机科学院967C语言程序设计和数据结构[专硕]之C程序设计考研核心题库...