1700462410
}
1700462411
1700462412
//清仓处理
1700462413
1700462414
private void clearStock(){
1700462415
1700462416
//要求清仓销售
1700462417
1700462418
super.sale.offSale();
1700462419
1700462420
//要求采购人员不要采购
1700462421
1700462422
super.purchase.refuseBuyIBM();
1700462423
1700462424
}
1700462425
1700462426
}
1700462427
1700462428
中介者Mediator定义了多个private方法,其目的是处理各个对象之间的依赖关系,就是说把原有一个对象要依赖多个对象的情况移到中介者的private方法中实现。在实际项目中,一般的做法是中介者按照职责进行划分,每个中介者处理一个或多个类似的关联请求。
1700462429
1700462430
由于要使用中介者,我们增加了一个抽象同事类,三个具体的实现类分别继承该抽象类,如代码清单14-7所示。
1700462431
1700462432
代码清单14-7 抽象同事类
1700462433
1700462434
public abstract class AbstractColleague{
1700462435
1700462436
protected AbstractMediator mediator;
1700462437
1700462438
public AbstractColleague(AbstractMediator_mediator){
1700462439
1700462440
this.mediator=_mediator;
1700462441
1700462442
}
1700462443
1700462444
}
1700462445
1700462446
采购Purchase类如代码清单14-8所示。
1700462447
1700462448
代码清单14-8 修改后的采购管理
1700462449
1700462450
public class Purchase extends AbstractColleague{
1700462451
1700462452
public Purchase(AbstractMediator_mediator){
1700462453
1700462454
super(_mediator);
1700462455
1700462456
}
1700462457
1700462458
//采购IBM电脑
1700462459
[
上一页 ]
[ :1.70046241e+09 ]
[
下一页 ]