【发布时间】:2009-06-10 14:57:54
【问题描述】:
我想就如何处理“事件”中的异常(按键输入、屏幕更新等)获得第二意见。在这种情况下,我可以控制事件发送者。
所以一个模块被设置为处理一个事件(它实现了一个监听器接口,并针对一个事件发送者进行了注册):
public void DefaultSet ( CardData oldDefault, CardData newDefault )
{
}
事件发送者很简单:
for ( Enumeration e = listeners.elements(); e.hasMoreElements(); )
{
RetrieverListener thisListener = (RetrieverListener) e.nextElement();
thisListener.DefaultSet( oldDefault, newDefault );
}
所以如果/当接收器出现问题时:
我是否应该尝试处理那里的异常,并且永远不要向发件人扔回任何东西?有时听众没有正确处理错误的“上下文”,对吗?
是否不赞成将异常抛回事件发送模块,以记录的方式进行处理?例如“抛出 IOException 将导致重置......”。从我读过的 javadocs 来看,这似乎是不标准的。
我是否应该只记录并在出现问题且无能为力时忽略异常?
【问题讨论】: