依赖倒置原则(Dependence Inversion Principle,DIP)是指设计代码结构时,高层模块不应该依赖底层模块,二者都应该依赖其抽象
减少类与类之间的耦合性,提高代码的可读性和可维护性,并能够降低修改程序所造成的风险,这样说起来可能有点抽象,接下来以例子说明
点击查看代码
public class sizimie {
public void studyJavaCourse(){
System.out.println("铃芽在学习 Java 的课程");
}
public void studyPythonCourse(){
System.out.println("铃芽在学习 Python 的课程");
}
}
public static void main(String[] args) {
sizimie sizimie1 = new sizimie();
sizimie1.studyJavaCourse();
sizimie1.studyPythonCourse();
}
点击查看代码
public interface ICourse {
void study();
}
public class JavaCourse implements ICourse {
@Override
public void study() {
System.out.println("zz 在学习 Java 课程");
}
}
public class PythonCourse implements ICourse {
@Override
public void study() {
System.out.println("zz 在学习 Python 课程");
}
再修改底层实现
public class sizimie {
public void study(ICourse course){
course.study();
}
}
修改调用类
public static void main(String[] args) {
Sizemie sizemie1 = new Sizemie();
sizemie1.study(new JavaCourse());
sizemie1.study(new PythonCourse());
}