//有一个Datas类如下 class Datas { private double height; private double width; private double length; private double weight; .... public Datas compareHeight(Datas data) { if(this.height>data.height) { return this; }else{ return data; } } public Datas compareWidth(Datas data) { if(this.Width>data.Width) { return this; }else{ return data; } } public Datas compareLength(Datas data) { if(this.length>data.length) { return this; }else{ return data; } } public Datas compareWeight(Datas data) { if(this.weight>data.weight) { return this; }else{ return data; } } ..... }
可以看到这个类中有好几个类似的compare方法,他们的唯一不同就是比较的属性不同而已,导致代码重复,有没有办法把这几个方法整合成一个方法(通过多添加一个参数 String cmp_type(类似的)来确定比较的属性)。类似的函数可能如下:
public Datas compare(Datas data,String cmp_type) { ... }
这样一来,上面的函数就可以修改成下面的样子,从而简化代码:
public Datas compareHeight(Datas data) { return compare(data,"height"); } ...
没有马甲线的安琪拉
相关分类