中介者模式定义:用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
想通过一个中间类来封装多个类中的行为,而又不想生成太多的子类,此时可以使用中介者模式。
以下代码演示中介者模式简单的实际运用:
定义一个类Taobao:
package com.ldl.cn.MediatorModel;
import java.util.Date;
public class Taobao {
public static void showBusiness(User user, String message) {
System.out.println(new Date().toString()+","+user.getName()+":"+message);
}
}
定义一个类User:
package com.ldl.cn.MediatorModel;
public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public User(String name) {
super();
this.name = name;
}
public void business(String message){
Taobao.showBusiness(this,message);
}
}
编写测试类:
package com.ldl.cn.MediatorModel;
public class TestMediatorPattern {
public static void main(String[] args) {
User seller = new User("卖家");
User buyer = new User("买家");
seller.business("卖东西.");
buyer.business("买东西.");
}
}
运行结果:
Sat May 11 16:30:11 CST 2019,卖家:卖东西.
Sat May 11 16:30:11 CST 2019,买家:买东西.