OO练习
业务类和实体类合二为一
居然将业务方法放在了实体类中 - 违背了设计原则 - “单一职责原则”.不要给一个类增加太多的负担
实体类 - 主要是描述对象,数据在内存中的载体 - 注重的应该是数据的存储
业务类 - 存放的是业务方法 - 在于操作这些数据
员工类[编号id,姓名name,工资salary]
业务方法[crud增删改查]放在实体类中 - 不合理的.
public class Emp{ private int id; private String name; private double salary; //一个上司拥有多个下属 //一个下属对应一个上司 //自关联 private Emp[] emps; //构造,getter/setter,toString //给上司添加一个下属 public void addEmp(Emp e){ //数组的扩容Arrays.copyOf(数组对象,新的长度); } //输出下属的个数 public void printEmpCount(){ } //输出某个上司所有的下属信息 public void printEmp(){ } } //TestEmp.java Emp boss = new Emp(1,"boss",100.0,new Emp[0]); Emp e1 = new Emp(1,"boss",100.0,null);
业务类和实体类分开
业务方法应该专门抽取出来放到一个业务类中.
public class Account{ private int id; private double balance;//余额 //... }
public class AccountBiz{ //转钱 public void test01(Account acc1,Account acc2,double money){ } //存钱 }