我有一些代码给一个实用程序,然后发送电子邮件给该用户的用户ID。您是否为特定问题或一般例外编写例外情况?
emailUtil.sendEmail(userId, "foo");
public void sendEmail(String userId, String message) throws MailException {
/* ... logic that could throw a MailException */
}
MailException
可以抛出一些原因,与电子邮件地址的问题,与邮件模板的问题等
我的问题是:你创建的每一个新的异常类型这些异常,然后单独处理它们,或者您是否创建一个MailException,然后在异常(计算机可读,而不是描述文本)中存储一些东西,这些异常允许我们根据实际发生的事情做不同的事情。
编辑:作为一个澄清,例外不适用于日志和不是,这与代码如何对它们做出反应有关。为了保持与邮件例如去,让我们说,当我们发送邮件可能失败,因为你没有一个电子邮件地址,或者它可能是因为你没有有效的电子邮件地址,或者它可能会失败..等
我的代码会想不同的反应,每一个问题(主要是通过改变信息返回给客户端,但实际的逻辑也一样)。
难道是最好有这不得不给它一些内部的这些问题,每一个或一种把伞异常的异常实现(枚举说了),让代码区分什么样的问题,它是。
你还记录你的例外服务器端? – pjp 2009-08-07 10:39:42
@php:是的,好点,如果它是一个服务器代码。对于真正的客户端应用程序(而不是web),我通常也可以选择在客户端登录异常以进行调试。 – 2009-08-08 17:21:54