1700479912
}
1700479913
1700479914
public void raise(){
1700479915
1700479916
super.mediator.up(this);
1700479917
1700479918
}
1700479919
1700479920
}
1700479921
1700479922
以上同事类的业务都委托给了中介者,其本类已经没有任何的逻辑了,非常简单,现在的问题是中介者类非常复杂,因为它要处理三者之间的关系。我们首先来看抽象中介者,如代码清单33-18所示。
1700479923
1700479924
代码清单33-18 抽象中介者
1700479925
1700479926
public abstract class AbsMediator{
1700479927
1700479928
//工资
1700479929
1700479930
protected final ISalary salary;
1700479931
1700479932
//职位
1700479933
1700479934
protected final IPosition position;
1700479935
1700479936
//税收
1700479937
1700479938
protected final ITax tax;
1700479939
1700479940
public AbsMediator(){
1700479941
1700479942
salary=new Salary(this);
1700479943
1700479944
position=new Position(this);
1700479945
1700479946
tax=new Tax(this);
1700479947
1700479948
}
1700479949
1700479950
//工资增加了
1700479951
1700479952
public abstract void up(ISalary_salary);
1700479953
1700479954
//职位提升了
1700479955
1700479956
public abstract void up(IPosition_position);
1700479957
1700479958
//税收增加了
1700479959
1700479960
public abstract void up(ITax_tax);
1700479961
[
上一页 ]
[ :1.700479912e+09 ]
[
下一页 ]