google event
2024-08-27 22:46:22
一目了然,也不用多说了,随便记录下,内部实现基于观察者模式
TestEvent
public class TestEvent {
private final int message;
public TestEvent(int message) {
this.message = message;
System.out.println("event message:"+message);
}
public int getMessage() {
return message;
}
}
EventListener 也可以多个subscribe,根据参数进入每个方法
import com.google.common.eventbus.Subscribe; public class EventListener {
public int lastMessage = 0; @Subscribe
public void listen(TestEvent event) {
lastMessage = event.getMessage();
System.out.println("Message:"+lastMessage);
} public int getLastMessage() {
return lastMessage;
}
}
TestEventBus
import com.google.common.eventbus.EventBus; public class TestEventBus { public static void main(String[] args) throws Exception { EventBus eventBus = new EventBus("test");
EventListener listener = new EventListener(); eventBus.register(listener); eventBus.post(new TestEvent(200));
eventBus.post(new TestEvent(300));
eventBus.post(new TestEvent(400)); System.out.println("LastMessage:"+listener.getLastMessage());
;
}
}
打印结果
event message:200
Message:200
event message:300
Message:300
event message:400
Message:400
LastMessage:400
最新文章
- C#之设计模式
- 07 day 2
- jstl表达式替换某些字符
- Return 和 Break 的区别
- html5面向对象做一个贪吃蛇小游戏
- EF中使用Select new 方法中字段值替换的问题
- java.util.regex.PatternSyntaxException: Unexpected internal error near index 1 \ ^
- C# sql操作
- (转)Java里的堆(heap)栈(stack)和方法区(method)(精华帖,多读读)
- # hadoop入门第六篇:Hive实例
- PBRT笔记(9)——贴图
- 嵌入式文件IO实验
- iOS UI基础-12.0 Storyboard
- BZOJ 1029 [JSOI2007]建筑抢修 (贪心 + 优先队列)
- Day 48 HTML 语言Day1
- CentOS安装Zabbix Agent
- vue ui components
- 安装redis-3.2.10单节点
- Iterations --codility
- Web 漏洞分析与防御之 CSRF(二)
热门文章
- pj1--学生信息管理系统
- gmake缺失错误
- jQuery的杂项
- [UE4]GameMode、GameInstance、GameState、PlayerState、PlayerController
- 结合源码分析 bubble 使用注意事项
- SSH框架总结(环境搭建+框架分析+实例源码下载)
- netbeans运行项目时,弹出“cannot be run from folder that contains non-ASCII characters in path”的对话框 解决方法
- python多进程与服务器并发
- 10 sed命令的基本用法
- Hadoop的RPC工作原理