事件处理,数据结构和程序设计,java
我有一个事件类型列表
enum EventType {
ErrorEvent, StatusEvent, DataEvent
}
一个侦听器可以通过调用
addListener (Listener listener,EventType eventType) {
// to do
}
有谁能建议,我可以使用什么样的数据结构来存储所有这些信息 (侦听器及其关联的事件类型)
或者任何其他java API类已经支持这一点
数组的数组或 在我看来,这张单子很难看
请建议
提前谢谢
# 1 楼答案
看起来你和其他很多人一样,正在重新发明著名的PropertyChangeListener/PropertyChangeEvent/PropertyChangeSupport机制。所以,帮自己一个忙,不要创建自己的事件/侦听器层次结构,而是重用通用层次结构,它是专门为bean属性更改(以及所有Java对象)定制的
# 2 楼答案
使用列表的枚举映射(如果希望侦听器是唯一的,则使用集合)