写一个消息的分发的系统
现在有一个设计问题,想跟你讨论下。
[code="java"]
Dispatcher.class
public handle(BaseEvent event);
[/code]
[code="java"]
IHandler.class (接口)
public handler(LoginEvent event);
public handler(LogoutEvent event);
[/code]
LoginEvent 和 LogoutEvent 是BaseEvent的子类
IHandler有多个实现类
在调用Dispatcher.handle(A);的时候会根据A的类型,获取对应的处理器组进行处理。
然后调用处理器的IHandler.handle(A);
由于IHandler没有BaseEvent类型参数的handler方法所以报错。
想知道这个问题怎样处理,如:根据Class类,如何创建该类型的引用。或者有更好的解决方法。