中介者模式 (Mediator Pattern)

聊天室的例子就很适合,关键在于那个静态方法的使用。

import java.util.Date;

public class Main {
    
    public static void main(String[] args) {
        User robert = new User("Robert");
        User john = new User("John");
        
        robert.sendMessage("Hi! John!");
        john.sendMessage("Hello! Robert!");
    }
}

class User {
    
    private String name;
    
    public User(String name){
        this.name  = name;
    }
    
    public void sendMessage(String message){
        ChatRoom.showMessage(this,message);
    }
    
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

class ChatRoom {
    
    public static void showMessage(User user, String message){
        String time = new Date().toString();
        System.out.println(time + " [" + user.getName() +"] : " + message);
    }
}

 

posted @ 2022-04-26 14:57  HanselHuang  阅读(33)  评论(0编辑  收藏  举报