依赖倒转原则

176 阅读1分钟

最近几个月开始逐渐开始学习设计模式,发现设计模式的七大原则之依赖倒转模式颇为巧妙,且出现频率高,故而今日留下一个小demo吧。

public class Demo1 {
    
    @Test
    public void test(){
        A a = new B();
        A c = new C();
        System.out.println(a.teacher());
        System.out.println(c.teacher());
    }
    
    public static void main(String[] args) {
        D d = new D();
        d.con(new C());
        d.con(new B());
    }
}

interface A{
     String teacher();
}

class B implements A{

    @Override
    public String teacher() {
        return "B";
    }
}

class C implements A{

    @Override
    public String teacher() {
        return "C";
    }
}

class D{
    public  void con(A a){
        System.out.println(a.teacher());
    };
}