博客
关于我
依赖倒置(DIP),控制反转(IOC),依赖注入(DI)
阅读量:273 次
发布时间:2019-03-01

本文共 894 字,大约阅读时间需要 2 分钟。

什么是依赖?

依赖就是一种需要,例如再Dal层做数据处理,而在Bll层要做操作的话,首先要实例化Dal层,然后才能进行操作。这就是Bll层依赖于Dal层,Dal层被Bll层依赖

namespase DAL{   public class Operation   {      public int Add(){}      public int Delete(){}   }}//BLL层若想调用Dal层,首先要对Dal层添加引用,然后实例化Dal层,才能进行操作using DAL;namespace Bll{    public class Operation    {       Operation ope=new Operation();       public int Add()       {         ope.Add();       }     }}

什么是倒置?

面向对象语言程序设计时,高层模块不直接依赖低层模块,二者通过抽象来依赖。依赖抽象,而不依赖具体细节。以前高层直接依赖于低层,现在高层依赖于抽象,细节由第三方工厂决定

namespase IDAL{public inteface IOperation{int Add();int Delete();}}using IDAL;namespase DAL{   public class Operation:IOperation   {      public int Add(){}      public int Delete(){}   }}namespase Factory{ public IOperation GetFactiory(){   //反射}}//using DAL;namespace Bll{    public class Operation    {       IOperation ope=Factory.GetFactiory();       public int Add()       {         ope.Add();       }     }}

 

 

 

 

转载地址:http://bpua.baihongyu.com/

你可能感兴趣的文章
mysql用户管理、常用语句、数据分备份恢复
查看>>
MySQL留疑问:left join时选on还是where?
查看>>
mysql登陆慢问题解决
查看>>
Mysql百万级数据查询优化
查看>>
MySQL的 DDL和DML和DQL的基本语法
查看>>
mysql的 if else , case when then, IFNULL
查看>>
MySQL的10种常用数据类型
查看>>
MySQL的btree索引和hash索引的区别
查看>>
mysql的cast函数
查看>>
MySql的CRUD(增、删、改、查)操作
查看>>
MySQL的DATE_FORMAT()函数将Date转为字符串
查看>>
mysql的decimal与Java的BigDecimal用法
查看>>
MySql的Delete、Truncate、Drop分析
查看>>
MySQL的Geometry数据处理之WKB方案
查看>>
MySQL的Geometry数据处理之WKT方案
查看>>
mysql的grant用法
查看>>
Mysql的InnoDB引擎的表锁与行锁
查看>>
mysql的InnoDB引擎索引为什么使用B+Tree
查看>>
MySQL的InnoDB默认隔离级别为 Repeatable read(可重复读)为啥能解决幻读问题?
查看>>
MySQL的insert-on-duplicate语句详解
查看>>