1.高层模块不应该依赖底层模块,两者都应该依赖抽象。
2.抽象不应该依赖细节。
3.细节应该依赖抽象
依赖倒置原则在java语言的表现就是:
模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或抽象类产生的。
4 接口或抽象类不依赖与实现类
5.实现类依赖接口或抽象类
一般都是通过接口来传递依赖。
注意:
对象的依赖三种方式来传递:
1 构造函数传递依赖对象。
2 setter方法传递依赖对象
3 接口声明依赖对象
项目实战:
每个类尽量都有接口或抽象类或者抽象类和接口两者都具备
这是依赖倒置原则的基本原则,接口和抽象类都是属于抽象的,有了抽象才可能依赖倒置
变量的表面类型尽量是接口或者抽象类。