jinfeng_wang

G-G-S,D-D-U!

BlogJava 首页 新随笔 联系 聚合 管理
  400 Posts :: 0 Stories :: 296 Comments :: 0 Trackbacks

前面已经多次提到过Checked Exception的好处。

在实际工作中,已经证实了这个问题。

当然,问题的由来和结构的设计有一定的关系。

A Module 调用 => B Module 调用=> C Module。

而异常处理已经深深的夹杂着这样的代码结构中。

用户直接使用A,但是会在C处才会出现问题。

这时候C需要抛出一个异常, 但是附加关键要求:

此异常消息明确无误,能够清晰地看出异常出现的原因

(在不重启的情况下,以便用户解决问题)

刚开始的代码中,直接就在C处跑出异常。

后来随着结构的复杂,加入了模块D (其位置和B相同)

甚至在最外层加入D (和A并列)

这就导致C处的异常消息的问题逐渐浮现出来。

原有在C处就能直接决定的Message现在不能在C处就确认(因为有多个进入C的入口)

此时,只能将异常消息的决定权往上一级进行转移。

。。。。。。。。。。。。。

UnChecked Exception对于这样的转移来说 太不能友好的支持了。

在反驳上述内容的时候,请带着这样的观点:

好的东西,可以在很别扭的情况下,也可以让别人轻松的达到和谐。

posted on 2007-01-05 00:50 jinfeng_wang 阅读(851) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: