单一职责是只尽量是一个类或一个方法只是负责一个职责,从而实现降低耦合的目的,接下来我们就用实际案例来解释
类的单一职责首先我们有一个课程类如下
public class Course { public void study(String courseName) { if("直播课".equals(courseName)) { System.out.println("在线观看,不可倒退"); } else if("录播课".equals(courseName)) { System.out.println("观看历史,可以倒退"); } } }
这里课程实现了针对不同的课程名实现不同的观看体验,但是如果对直播课程或者录播课程进行修改,因为两个混合在一起,所有修改逻辑必然会有所影响,带来不可控的风险,所以此时可以将两个分别进行开发。
LiveCourse:
public class LiveCourse { public void study() { System.out.println("观看历史,可以倒退"); } }
ReplayCourse
public class ReplayCourse { public void study() { System.out.println("在线观看,不可倒退"); } }
这里我们将直播课和录播课都提取出来分别开发,这样就实现了解耦
方法的单一职责首先我们有一个方法如下
public void modifyUserInfo(String userName,String address) { this.userName=userName; this.address=address; }
这里的方法承担了多个职责,既可以更改姓名,也可以更改地址
我们可以把这个方法进行拆分
public void modifyUserName(String userName) { this.userName=userName; } public void modifyAddress(String address) { this.address=address; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)