依赖倒置原则 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、付费专栏及课程。

余额充值