首页 > 其他 > 详细

设计模式之依赖倒转原则

时间:2020-02-29 02:39:41      阅读:60      评论:0      收藏:0      [点我收藏+]

 

基本概念:

技术分享图片

 

抽象表示的是接口、抽象类。细节就是具体的实现类。接口或抽象类的价值在于指定规范。

 

一个反面例子:

public class DependencyInversion {
    public static void main(String[] args) {
        People people = new People();
        people.receive(new Email());
    }
}

class Email {
    public String getInfo(){
        return "这是电子邮件信息";
    }
}

class People {
    public void receive(Email email){
        System.out.println(email.getInfo());
    }
}

 

信息不一定是邮件啊,也可能是qq或者微信,这个时候时候就要新增类,People也要新增其他的接收方法。所以改成以下方式:

public class DependencyInversion {
    public static void main(String[] args) {
        People people = new People();
        people.receive(new Email());
        people.receive(new WeiXin());
    }
}

interface IMessage{
    public String getInfo();
}
class Email implements IMessage{
    public String getInfo(){
        return "这是电子邮件信息";
    }
}
class WeiXin implements IMessage{
    public String getInfo() {
        return "这是微信信息";
    }
}
class People {
    public void receive(IMessage iMessage){
        System.out.println(iMessage.getInfo());
    }
}

 

技术分享图片

 

 

1.通过接口:

技术分享图片

 

 

2.通过构造器

技术分享图片

 

3、通过setter方法:

技术分享图片

 

 

总结:

技术分享图片

 

设计模式之依赖倒转原则

原文:https://www.cnblogs.com/chenmz1995/p/12380387.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!