依赖倒置原则 Dependence Inversion Principle

High level modules should not depend upon low level modules.Both shoud depend upon abstractions.Abstractions should not depend upon details.Details should depend upon abstractions.

1.高层模块不应该依赖底层模块,两者都应该依赖其抽象.

2.抽象不应该依赖细节.

3.细节应该依赖抽象.

 

在java语言中的表现为:

1.模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或抽象类产生的.

2.接口或抽象类不依赖于实现.

3.实现类依赖接口或抽象类.

更加精简的定义就是"面向接口变成"---OOD(Object-Oriented Design,面向对象设计)的精髓之一.

 

具体的,只要遵循以下的几个规则就可以:

1.每个类尽量都有接口或抽象类,或者抽象类和接口两者都具备.

2.变量的表面类型尽量是接口或者抽象类

3.任何类都不应该从具体类派生

4.尽量不要覆写基类的方法.

5.结合里氏替换原则使用.

转载于:https://www.cnblogs.com/zyh186/p/9187166.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值