我正在阅读BalusC的代码审查问题here和教程。我已经发现扩展了异常类。
有什么需要呢?我读了client layer should not know SQLExecption
的内容,但我不确定是否理解。
你能解释为什么要做专门的例外吗?如果我的DAO方法没有throws
且客户端代码位于try-catch
,该怎么办?
答案 0 :(得分:6)
因为DAO今天可以在明天抛出SQLException
如果你想改变DAO层来写入文件,它可能会导致FileNotFoundException
,所以隐藏你向客户显示的底层内容对他们来说重要(自定义商业明智的例外)