Guava之EventBus 簡單示例

 

EventBus是Guava的事件處理機制,是設計模式中的觀察者模式(生產/消費者編程模型)的優雅實現。對於事件監聽和發佈訂閱模式,EventBus是一個非常優雅和簡單解決方案,我們不用創建複雜的類和接口層次結構。

package com.hcmony.adscounter.api;


import com.google.common.eventbus.EventBus;
import com.google.common.eventbus.Subscribe;

/**
 * <h3>類的基本描述</h3>
 *
 * @author hcmony
 * @since V1.0.0, 2020/3/11 09:54
 */
public class Test {

    public static void main(String[] args) {
        EventBus bus = new EventBus();
        bus.register(new MyLisenter());
        bus.post(new MyEvent("test"));
    }

    static class MyEvent {
        private String message;

        public MyEvent(String message) {
            this.message = message;
        }

        @Override
        public String toString() {
            return this.message;
        }
    }

    static class MyLisenter{
        @Subscribe
        public void consume(MyEvent event){
            System.out.println(event.toString());
        }
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章