例子
我们课程有直播还有录播, 直播不能快进和后退, 录播可以,功能职责不一样
Course
public class Course {
public void study(String courseName) {
if ("直播课".equals(courseName)) {
System.out.println(courseName + "不能快进和后退");
} else {
System.out.println(courseName + "可以反复观看");
}
}
}
调用处的代码
public static void main(String[] args) {
Course course = new Course();
course.study("直播课");
course.study("录播课");
}
直播和录播加密的流程不一样, 后续改动会互相影响, 应该解耦
直播课
public class LiveCourse {
public void study(String courseName) {
System.out.println(courseName + "不能快进看");
}
}
录播课
public class ReplayCourse {
public void study(String courseName) {
System.out.println(courseName + "可以反复看");
}
}
调用
public static void main(String[] args) {
LiveCourse liveCourse = new LiveCourse();
liveCourse.study("直播课");
ReplayCourse replayCourse = new ReplayCourse();
replayCourse.study("录播课");
}