码迷,mamicode.com
首页 > 其他好文 > 详细

设计模式课程 设计模式精讲 3-4 依赖倒置原则讲解+coding

时间:2019-06-02 15:34:27      阅读:96      评论:0      收藏:0      [点我收藏+]

标签:enc   代码   public   ini   roc   class   实体类   编程   16px   

1    课程讲解

2    代码演练

2.1  非面向接口编程

2.2  面向接口编程1  传参

2.3  面向接口编程2  构造函数

2.4  面向接口编程3  set方法

 

1    课程讲解

2    代码演练

2.1  非面向接口编程

缺点:  

测试类:

package com.geely.design.principle.dependencyinversion;

public class Test {
    //v1.1  普通方法调取java类
    public static void main(String[] args) {
        Geely geely = new Geely();
        geely.studyJavaClass();
        geely.studyPreClass();
    }
}

 

实体类:

package com.geely.design.principle.dependencyinversion;

public class Geely {
    public void studyJavaClass(){
        System.out.println("Geely Study Java Lesson");
    }

    public void studyPreClass(){
        System.out.println("Geely Study Pre Lesson");
    }

}

 

打印结果:

Geely Study Java Lesson
Geely Study Pre Lesson

Process finished with exit code 0

 

2.2  面向接口编程1  传参

缺点:

测试类:

package com.geely.design.principle.dependencyinversion;

public class Test {
    //v1.1  普通方法调取java类
    /*public static void main(String[] args) {
        Geely geely = new Geely();
        geely.studyJavaClass();
        geely.studyPreClass();
    }*/

    //v1.2  面向接口编程 传参
    public static void main(String[] args) {
        Geely geely = new Geely();
        geely.studyImoocClass(new JavaCourse());
        geely.studyImoocClass(new PreCourse());
    }
}

 

实体类:

package com.geely.design.principle.dependencyinversion;

public class Geely {
    public void studyJavaClass(){
        System.out.println("Geely Study Java Lesson");
    }

    public void studyPreClass(){
        System.out.println("Geely Study Pre Lesson");
    }

    public void studyImoocClass(Icourse icourse){
        icourse.studyClass();
    }


}

 

课程类1:

package com.geely.design.principle.dependencyinversion;

public class JavaCourse implements  Icourse{
    @Override
    public void studyClass() {
        System.out.println("Geely Study Java Lesson");
    }
}

 

课程类2:

package com.geely.design.principle.dependencyinversion;

public class PreCourse implements Icourse{
    @Override
    public void studyClass() {
        System.out.println("Geely Study Pre Lesson2");
    }
}

 

课程接口:

package com.geely.design.principle.dependencyinversion;

public interface Icourse {
    void studyClass();
}

 

打印日志:

Geely Study Java Lesson
Geely Study Pre Lesson2

Process finished with exit code 0

 

2.3  面向接口编程2  构造函数

2.4  面向接口编程3  set方法

设计模式课程 设计模式精讲 3-4 依赖倒置原则讲解+coding

标签:enc   代码   public   ini   roc   class   实体类   编程   16px   

原文地址:https://www.cnblogs.com/1446358788-qq/p/10962800.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!