public static void main(String[] args) { AbstractColleague colleagueA = new ConcreteColleagueA(); AbstractColleague colleagueB = new ConcreteColleagueB(); AbstractMediator mediator = new ConcreteMediator(colleagueA, colleagueB); System.out.println("Colleagues work without mediator."); colleagueA.setNumber(15); System.out.println( "Number of A: " + colleagueA.getNumber() + ", number of B: " + colleagueB.getNumber()); colleagueB.setNumber(25); System.out.println( "Number of A: " + colleagueA.getNumber() + ", number of B: " + colleagueB.getNumber()); System.out.println("Colleagues work with mediator."); colleagueA.setNumber(15, mediator); System.out.println( "Number of A: " + colleagueA.getNumber() + ", number of B: " + colleagueB.getNumber()); colleagueB.setNumber(25, mediator); System.out.println( "Number of A: " + colleagueA.getNumber() + ", number of B: " + colleagueB.getNumber()); }
public void out() { System.out.println("同事A:请求同事B做好自己份内事"); super.mediator.execute("ColleagueB", "self"); }
public void buyIBMComputer(int number) { super.mediator.execute("purchase.buy", number); }
public void offSale() { super.mediator.execute("sale.offsell"); }
public void sellIBMComputer(int number) { super.mediator.execute("sale.sell", number); System.out.println("銷售IBM電腦:" + number); }
public void clearStock() { System.out.println("清理存貨數量為:" + CUMPUTER_NUMBER); super.mediator.execute("stock.clear"); }