java设计模式之基本原则

来源:互联网 发布:电脑程序编程培训 编辑:程序博客网 时间:2024/05/22 17:12

前面已经介绍了两个原则
开放封闭原则
单一职责原则
今天我们再来看看另外一个原则:依赖倒置原则,他包含两个方面
A.高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。
B.抽象不应该依赖于具体,具体应该依赖于抽象。
其实这两句话总结起来说就是要依赖域抽象。在java中说白了就是要面向接口编程。
下面我们举个经典的例子:现在汽车很普遍,学了一个驾照大部分车都能开。但是你有没有想过如果每一个品牌的车的驾驶方式都不一样,那么你每换一个车就得重学一遍。说以说每台车的操作方式都应该有一个标准的规范,而这个规范对应到我们编程就是接口。所有的车都应该依赖这个接口。想来通过这个例子你就能理解依赖倒置原则的好处了:
采用依赖倒置原则可以减少类间的耦合性,提高系统的稳定性,减少并行开发引起的风险,提高代码的可读性和可维护性。
接下来我们再用jdk中的例子来说明:
看下面一段代码:

public class Test {    public static void main(String[] args) {        List list=new ArrayList();        list.add("11");        System.out.println(list.get(0));    }}

这段代码我们运行肯定是输出11;接下来我们对代码进行修改

public class Test {    public static void main(String[] args) {        List list=new LinkedList();//list改成linkedList        list.add("11");        System.out.println(list.get(0));    }}

代码依旧运行正常,这是因为arrayList和linkedlist都实现了list接口,我们可以把他们都当做list来用,这就是面向接口编程的好处。这其中还涉及到另外一个原则:里氏替换原则中说,任何基类可以出现的地方,子类一定可以出现。这个很容易理解大家也一直在用,我就不再细说了。好了今天就到这。下次我们可能就会说说具体的设计模式了。

4 0
原创粉丝点击