1. 概述
2. 代码示例解析<面向接口编程>
- 详细解析在测试类上的注释
public interface ICourse {
void studyCourse();
}
public class JavaCourse implements ICourse {
@Override
public void studyCourse() {
System.out.println("Study JAVA course!");
}
}
public class WebCourse implements ICourse {
@Override
public void studyCourse() {
System.out.println("Study WEB course!");
}
}
public class AlexStudyCourse {
private ICourse course;
public void setCourse(ICourse course) {
this.course = course;
}
public void studyCourse() {
course.studyCourse();
}
}
public class DepencyInversionTest {
public static void main(String[] args) {
AlexStudyCourse studyCourse = new AlexStudyCourse();
studyCourse.setCourse(new JavaCourse());
studyCourse.studyCourse();
studyCourse.setCourse(new WebCourse());
studyCourse.studyCourse();
}
}