1700468215
return info;
1700468216
1700468217
}
1700468218
1700468219
}
1700468220
1700468221
运行结果完全相同,不再赘述。通过这样构件,一个非常清晰的树状人员资源管理图出现了,那我们的程序是否还可以优化?可以!你看Leaf和Branch中都有getInfo信息,是不是可以抽象?好,我们抽象一下,如图21-5所示。
1700468222
1700468223
1700468224
1700468225
1700468226
图21-5 精简的类图
1700468227
1700468228
你一看这个图,乐了。能不乐嘛,减少很多工作量了,接口没有了,改成抽象类了,IBranch接口也没有了,直接把方法放到了实现类中了,太精简了!而且场景类只认定抽象类Corp就成,那我们首先来看抽象类ICorp,如代码清单21-14所示。
1700468229
1700468230
代码清单21-14 抽象公司职员类
1700468231
1700468232
public abstract class Corp{
1700468233
1700468234
//公司每个人都有名称
1700468235
1700468236
private String name=””;
1700468237
1700468238
//公司每个人都职位
1700468239
1700468240
private String position=””;
1700468241
1700468242
//公司每个人都有薪水
1700468243
1700468244
private int salary=0;
1700468245
1700468246
public Corp(String_name,String_position,int_salary){
1700468247
1700468248
this.name=_name;
1700468249
1700468250
this.position=_position;
1700468251
1700468252
this.salary=_salary;
1700468253
1700468254
}
1700468255
1700468256
//获得员工信息
1700468257
1700468258
public String getInfo(){
1700468259
1700468260
String info=””;
1700468261
1700468262
info=“姓名:”+this.name;
1700468263
1700468264
info=info+”\t职位:”+this.position;
[
上一页 ]
[ :1.700468215e+09 ]
[
下一页 ]