设计模式六大原则----------依赖倒置原则

前端之家收集整理的这篇文章主要介绍了设计模式六大原则----------依赖倒置原则前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

设计模式总览



依赖倒置原则(Dependence Inversion Principle)

该原则规定:

①高层模块不依赖低层模块。两者都应该依赖抽象接口

②抽象不能依赖具体。而具体应该依赖抽象接口


此原则的目的是为了实现解耦。将依赖关系建立在高层,而低层用来做具体实现。因为高层相对稳定,不会经常变动,而具体实现则会经常变动。


其实该原则,在现实生活中也经常用到。以电脑cpu来说,主板厂商定好cpu引脚接口,然后不同的cpu厂商按照此接口来生成cpu。这样对于用户来说,只需要买回cpu和主板,然后将cpu插入主板就行了,完全不用再去关心哪个厂的板子配哪个厂的cpu。在这里,cpu引脚插口就是oop中的抽象接口,cpu厂商按照此接口规则,生成出不同的“具体”cpu,每个型号的cpu就是一个“具体”。


案例分析:

妈妈给孩子读故事书。

class mother
{
	public void Speek(Book book);
}

class Book
{
}
OK,搞定了。但是小孩天天听故事书听烦了,现在心血来潮,要听报纸。这下问题来了,妈妈竟然只会读故事书,不会读报纸啊,这不科学!!!

上面一个简单的案例就反应出了依赖具体带来的隐患。下面看看依赖抽象如何实现:

class IWords
{

}

class mother
{
	public void Speek(IWords book);
}

class Book : public IWords
{
}

class News : public IWords
{

}
OK,现在无论想听什么,只需要拓展相应的类(派生自IWords)就行了,无需去修改其他原有的类。(呀呀,无意间实现了一个《开闭原则》案例) 原文链接:https://www.f2er.com/javaschema/285716.html

猜你在找的设计模式相关文章