参考:https://design-patterns.readthedocs.io/zh_CN/latest/behavioral_patterns/mediator.html
角色:
Mediator: 抽象中介者
ConcreteMediator: 具体中介者
Colleague: 抽象同事类
ConcreteColleague: 具体同事类
参考:
https://www.runoob.com/design-pattern/mediator-pattern.html
https://blog.csdn.net/niunai112/article/details/79913833
上代码:
import java.util.Date;
public class ChatRoom {
public static void showMessage(User user, String message){
System.out.println(new Date().toString()
+ " [" + user.getName() +"] : " + message);
}
}
public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public User(String name){
this.name = name;
}
public void sendMessage(String message){
ChatRoom.showMessage(this,message);
}
}
public class MediatorPatternDemo {
public static void main(String[] args) {
User robert = new User("Robert");
User john = new User("John");
robert.sendMessage("Hi! John!");
john.sendMessage("Hello! Robert!");
}
}
-----------------------------------------------------------------------------------
中介者模式核心就是把网状结构变为星状结构,so easy,不多说了