Item 59: Avoid unnecessary use o

2018-04-15  本文已影响43人  DrunkPian0

**译者注:我想提前说一下,这篇以及前两篇讲的其实都是API设计。比如这一篇就是告诉我们不要随便抛异常,比如我们构造FileInputStream的时候之所以会报Unhandled Exception(也就是checked exception),就是因为API设计者期望我们recover这种异常:


constructor

Item 59: 避免不必要的checked exceptions

Checked Exceptions是个非常好非常牛逼的特性,因为它强迫用户去修改代码,不然没法编译过,大大提升了可靠性。但是这么做很麻烦,所以要避免设计不必要的checked exceptions。

1)尽量在API内部处理掉checkedException。如输出错误信息或写日志后,结束当前程序。
2)对于那些本来就是该向外抛出异常来表明内部的某种失败的情况下,调用者尽量在调用之前确保可以成功再调用。
3)在适当的时候,使用RuntimeException。如果API不能做的更好,也许RuntimeException会更为适合。

--

上一篇下一篇

猜你喜欢

热点阅读