• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
掬一束月光
路漫漫其修远兮,吾将上下而求索.
博客园    首页    新随笔    联系   管理    订阅  订阅
依赖倒置原则 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.结合里氏替换原则使用.

专注Java开发

作者:翟亚豪

邮箱:zyh186214@hotmail.com

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

posted on 2018-06-15 14:33  掬一束月光  阅读(117)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3