中介:中介指在不同事物或同一事物内部对立两极之间起居间联系作用的环节。
简单地说,对象与对象之间不是直接联系(通信),而是通过某种渠道、格式或者事务。
而中介者模式(Mediator Pattern)就是用来降低多个对象和类之间的通信复杂性。
这种模式提供了一个中介类,该类通常处理不同类之间的通信,并支持松耦合,使代码易于维护。中介者模式属于行为型模式。
现实中:
- 中国加入 WTO 之前是各个国家相互贸易,结构复杂,现在是各个国家通过 WTO 来互相贸易。
- 相亲也是通过中介- -
代码很简单,我就不解释思路了:
import java.util.Date;
class ChatRoom{
//规定通信方式
public static void showMessage(User user,String message){
System.out.println(new Date().toString()+"["+user.getName()+"]:"+message);
}
}
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 sendMessage(String message){
ChatRoom.showMessage(this, message);
}
}
public class MediatorPatternDemo {
public static void main(String[] args) {
User lfj= new User("LFJ");
User lhj=new User("LHJ");
lfj.sendMessage("hh");
lhj.sendMessage("bb");
}
}
输出:
Mon Jul 10 08:54:53 CST 2017[LFJ]:hh
Mon Jul 10 08:54:53 CST 2017[LHJ]:bb