『23种设计模式』依赖倒置

第二原则:依赖倒置职责

        高层模块:调用者

        底层模块:被调用者

        高层模块不依赖于底层模块,二者都依赖于抽象

        换言之,是面向接口(抽象)编程,不是面向实现编程

例如Graphics(高层模块)依赖了Rectangle(底层模块)违背了依赖倒置原则

如下修改:Graphics(高层模块)就没有依赖任何底层模块,而是依赖于接口(抽象)

并且两个子类(底层模块)也依赖于接口(抽象)

如果想代码更简洁点,可以去除高层模块中的函数参数

将高层模块代码修改为:

同样主函数也需要修改:主函数修改的原因 是因为参数中依赖了Circle(底层模块)

修改为:应该依赖于抽象

End.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值