版权声明:LemonSnm https://blog.csdn.net/LemonSnm/article/details/83040265
单一职责原则:
一个类只负责一个功能领域中的相应职责,即就一个类而言,应该只有一个引起它变化的原因。
好处:
- 降低类的复杂度,一个类只负责一项职责,其逻辑肯定比负责多项职责简单的多
- 复杂度低,可读性自然提高。
- 可维护性高,风险低。如果接口的单一职责好,一个接口修改只对相应的类有影响。对其他的接口无影响,这对系统的扩展性、维护性都有非常大的帮助。
实例:
客户管理系统,需要一个可以生成客户表的工具
数据库:用户信息:
package com.saxy.LemonSnm;
/*
顾客信息
*/
public class Customer {
public String name;
public int age;
public Customer(String name,int age){
this.name = name;
this.age = age;
}
}
查找数据库:
package com.saxy.LemonSnm;
import java.util.ArrayList;
import java.util.List;
public class CustomerDao {
//查找数据库
List<Customer> findCustomers(){
List<Customer> cus = new ArrayList<Customer>();
cus.add(new Customer("张三",30));
cus.add(new Customer("李四", 31));
return cus;
}
}
读取数据库,输出用户信息:
package com.saxy.LemonSnm;
public class CustomerChart {
//读取数据库
CustomerDao dao;
public void setDao(CustomerDao dao){
this.dao = dao;
}
//输出用户信息
public void displayCustomers(){
for(Customer customer : dao.findCustomers()){
System.out.println("Customers name:" + customer.name + " age:" + customer.age);
}
}
}
客户端测试:
package com.saxy.LemonSnm;
public class Main {
public static void main(String[] args) {
System.out.println("this is main method");
CustomerChart customerChart = new CustomerChart(); //新建客户表
customerChart.setDao(new CustomerDao()); //读取数据库
customerChart.displayCustomers(); //输出用户信息
}
}