王同学没搞清一个基本概念,exception不是拿来做“错误”处理的,否则就应该叫error了。
CE之所以没什么用,最根本的原因是,你不应该去捕获其它函数抛出的异常,而应该去捕获你需要处理的异常,在函数签名里写或者不写某个东西对这一目标毫无帮助。
需要捕获的异常仅仅包括运行时才会产生的、事先可以预料到的、并且可以恢复的异常,比如磁盘满网络断了之类,其它所有的异常只意味着程序错误,掩盖它们是没用的。
王同学的文章一直清楚的表明他缺乏实际的工程经验,这一篇也不例外。