单一职责是指一个类或者方法出现两种以上职责,一旦需求的变更,这时候要修改一项职责,有可能就会影响到另一个职责。
解决办法:
将两个职责用两个类来实现,进行解耦。
发现:
既然单一职责原则规定我们尽量不要把不同的职责写在同一个方法内,但是java又提供重载这一机制。
public class ICompany {
public void create(String branch){
if("人事".equals(branch)){
System.out.println(branch+"招人");
}else
System.out.println(branch+"推市场");
}
}
public static void main(String[] args) {
ICompany iCourse=new ICompany();
iCourse.create("人事");
iCourse.create("销售");
}
下面把两个职责分别写两个类实现
public class ICompanyHr {
public void create(String branch){
System.out.println("招聘");
}
}
public class ICompanySell {
public void craete(String branch){
System.out.println("推市场");
}
}
public static void main(String[] args) {
ICompanySell iCompanySell =new ICompanySell();
iCompanySell.craete("销售");
ICompanyHr iCompanyHr= new ICompanyHr();
iCompanyHr.create("招聘");
}
来源:https://blog.csdn.net/weixin_45541359/article/details/99759359