美文网首页工作生活
如何手写一个简单发布订阅模式

如何手写一个简单发布订阅模式

作者: 感性的微笑 | 来源:发表于2019-07-01 17:17 被阅读0次

    面试过程中很多面试官如何手写个发布订阅模式下面就是一个简单的demo

    //qq实体
    public class QqMessage extends Observable {
     
        private static  QqMessage qqMessage=null;
        public QqMessage() {
        }
        public static QqMessage getQqMessage(){
            if(qqMessage==null){
                qqMessage=new QqMessage();
            }
            return qqMessage;
        }
    
        public void publishMessage(String message){
            System.out.println("发送的消息"+message);
            setChanged();
            notifyObservers(message);
    
        }
    
    
    public class Friend implements Observer {
    
        private String name;
    
        public Friend(String name) {
            this.name = name;
        }
    
        @Override
        public void update(Observable o, Object arg) {
            QqMessage qqMessage = (QqMessage) o;
            String message = (String) arg;
            System.out.println("==================="+qqMessage);
            System.out.println("通知消息"+name+message);
        }
    
    public static void main(String[] args) {
            QqMessage message = QqMessage.getQqMessage();
            Friend teacher=new Friend("cat");
            message.addObserver(teacher);
            message.publishMessage("小明向qq空间提问了一条消息");
    
        }
    
    

    相关文章

      网友评论

        本文标题:如何手写一个简单发布订阅模式

        本文链接:https://www.haomeiwen.com/subject/djzgcctx.html