java – 包含多个异常的自定义异常:鼓励与否?
发布时间:2020-05-26 03:14:08 所属栏目:Java 来源:互联网
导读:我正在编写将用于访问数据库的 Java库. 我向最终程序员抛出异常,他们使用JAR库以他/她想要的方式处理它. 我编写了一个自定义Exception(下面提供)来将特定于连接的异常包装在一起,这样最终程序员就不必在他的代码中捕获所有这些异常. (为了方便他) 在编写Java
|
我正在编写将用于访问数据库的
Java库.
我编写了一个自定义Exception(下面提供)来将特定于连接的异常包装在一起,这样最终程序员就不必在他的代码中捕获所有这些异常. (为了方便他) 在编写Java库时,这是一个很好的做法吗? 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();
}
}
} 解决方法根据this帖子,将所有异常包装在一起并不好.
如果你想包装它们 由于您的程序一次只会抛出一个异常,因此无需在NConnectionException中存储异常列表. 您可以在NConnectionException类中创建单个异常对象.你可以参考 并将抛出的异常存储在该对象中并返回新创建的NConnectionException类对象.让调用程序捕获NConnectionException异常并取出存储的对象并相应地执行操作. 注意:通常我们不处理未经检查的异常(如NullPointerException),调用程序会处理它. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java-允许Servlet和客户端脚本读取同一文件的最佳方法是什么
- Java网络编程之URL+URLconnection使用方法示例
- java – Spring Boot Security不会抛出401 Unauthorized Ex
- 从java.util.logging中分离INFO和ERROR日志
- java-在CopyOnWriteArrayList中获取用于添加操作的锁
- ScheduledExecutorService任务定时代码示例
- c# – 64位计算机上的32位Java可访问性
- 将Java对象序列化成JSON和XML格式的实例
- java – 没有主类的Gradle?
- Sun的HotSpot JIT编译器是否自动将“final”应用于Java局部
