学习目标:
单一职责原则的定义
通过代码示例进一步理解单一职责原则
单一职责的优点
定义:
定义:不要存在导致一个类变更的原因
这句定义比较抽象,我们可以这样理解一个类,接口,方法只负责一项原则
代码示例:
对于一个类举例,就拿学习视频课程来说吧,我们知道视频课程有在线直播的,也有录制的视频
定义一个课程类,在定义学习的方法,如:
public class Course {
//课程分直播课或录播课程
public void study(String name) {
if (name.equals("直播课")){
System.out.println("不能快进");
}else {
System.out.println("可以快进");
}
}
}
我们可以把一个课程,分为录播课程和直播课程
public class LiveCourse {
public void Study(){
System.out.println("直播课不能快进");
}
}
public class RecordingCourse {
public void Study(){
System.out.println("录播课可以快进");
}
}
对于一个接口举例,就拿视频课程来说,课程有名称和视频,对我们学习而言我们可以学习和做笔记
public interface ICourse {
String getCourseName();
byte[] getCourseVideo();
void studying();
void relearning();
}
我们可以把这个接口拆分成下面两个接口
public interface ICourseManage {
void studying();
void relearning();
}
public interface ICourseMessage {
String getCourseName();
byte[] getCourseVideo();
}
对于一个方法举例,我们要修改用户的信息,我们可以写重载的方法也可以将多个方法拆分开来
public class Modify {
//修改用户的信息
public void modify(String name,int age){
name="jake";
age=18;
}
//多个信息
public void modify(String name,int age,String...fields){
name="jake";
age=18;
}
public void modifyName(String name){
}
public void modifyAge(int age){
}
}
优点:
- 降低类的复杂度
- 提高类的可读性
- 提高系统的可维护性