小编ndn*_*e89的帖子

包含多个异常的自定义异常:鼓励与否?

我正在编写将用于访问数据库的Java库.我向最终程序员抛出异常,他们使用JAR库以他/她想要的方式处理它.

我编写了一个自定义异常(下面提供)来将特定于连接的异常包装在一起,这样最终程序员就不必在代码中捕获所有这些异常.(为了方便他)

在编写Java库时,这是一个很好的做法吗?通过使用它,用户只需要在他的代码中捕获NConnectionException.

public class NConnectionException extends Exception {
private static final Logger logger = LoggerFactory.getLogger(NConnectionException.class);
public NConnectionException(Exception e) {

    if (e instanceof NullPointerException) {
        logger.error("ERROR IN READING DF");
        e.printStackTrace();
    }

    else if (e instanceof FileNotFoundException) {
        logger.error("FILE NOT FOUND");
        e.printStackTrace();

    } else if (e instanceof ParserConfigurationException)
    {
        logger.error("PARSE CONF ERR");
        e.printStackTrace();

    }
    else if (e instanceof org.xml.sax.SAXException)
    {
        logger.error("SAX ERR");
        e.printStackTrace();

    }
    else if (e instanceof IOException)
    {
        logger.error("IO ERR");
        e.printStackTrace();

    }

}
Run Code Online (Sandbox Code Playgroud)

}

java exception-handling jar checked-exceptions

7
推荐指数
1
解决办法
9259
查看次数