前言:中介者模式(Mediator Pattern)是用来降低多个对象和类之间的通信复杂性。这种模式提供了一个中介类,该类通常处理不同类之间的通信,并支持松耦合,使代码易于维护。中介者模式属于行为型模式。优点: 1、降低了类的复杂度,将一对多转化成了一对一。 2、各个类之间的解耦。 3、符合迪米特原则。缺点:中介者会庞大,变得复杂难以维护。
JAVA语言版中介者模式
创建中介类与User类(这两个必须一起创建):
public class ChatRoom {
public static void showMessage(User user,String message){
System.out.println(new Date() +","+user.getName()+"说:"+message);
}
}
public class User {
private String name;
public User(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void sendMessage(String message){
ChatRoom.showMessage(this,message);
}
}
使用MediatorPatternDemo演示中介者模式:
public class MediatorPatternDemo {
public static void main(String[] args) {
User userOne= new User("小明");
User userTwo= new User("小李");
userOne.sendMessage("小李,你好!");
userTwo.sendMessage("小明,你好!");
}
}
输出结果:
Tue Apr 30 16:26:48 CST 2019小明说:小李,你好!
Tue Apr 30 16:26:48 CST 2019小李说:小明,你好!