这一章都是讲异常的,里面很多原则还是要在实践中用到了才有体会啊。有些条目讲的也很简单,除了记一下标题,都不知道还要记什么。异常是有用的东西,但是也给代码带来了相当大的复杂度。用的好,可以让你的程序更健壮,用的不好,代码里到处都是try catch,你都不知道该从哪里看起。
57,只针对异常的情况才使用异常。不要用异常来控制流程。在这个话题上,不得不说我遇到的一个项目,本来数据库查询查不到结果是很正常的事情,可是这个项目非要生造一个ObjectNotFoundException,查不到数据的时候就抛一个这种异常,把正常的处理流程搞的要多别扭有多别扭,还有人在捕获这个异常时printStackTrace,日志里到处都是。
58,对可恢复的情况使用受控异常,对编程错误使用运行时异常。
59,避免不必要的使用受控的异常。
60,优先使用标准的异常。标准异常看着眼熟,容易理解啊。还是57条里说的那个项目,他们造了一堆奇奇怪怪的异常,最后是除了那个ObjectNotFoundException,其他基本没人用。
61,抛出与抽象对应的异常。高层代码应该捕获并封装低层次的异常。
62,每个方法抛出的异常都要有文档。话说回来,即使是提供了文档的标准库,很多人也不看的,反正调用的时候,IDE会提示你要捕获哪些异常,大多数人对异常也不处理,就是printStackTrace了事。不过真想把代码写得好,还是要看看的。
63,在细节消息中包含能捕获失败的消息。说白了,就是你的异常信息最好包含一些能让人更迅速的发现问题在什么地方的信息。话说有些人连NullPointerException都看不明白的,给他什么信息都没用。
64,努力使失败保持原子性。如果会失败,尽量不要破坏原来的状态。当然这个很难,有时候根本不可能做到的。比如ConcurrentModifiedException,纵然会抛出异常,改了就是改了。
65,不要忽略异常。嗯,至少printStackTrace一下啊。话说回来,大部分时候,对异常的处理也就是这样了。
分享到:
相关推荐
effective java 读书笔记,第二版自己摘要并翻译,以备速查。
Effective Java读书笔记.pdf
2021年EFFECTIVEJAVA读书笔记.docx
Effective-Java读书笔记,别人分享的
基于Effective Java第二版的读书笔记,可以帮助你更好的阅读这边Java圣经,更快的理解其思想
Effective Java读书笔记,记载了大部分我觉的有用的东西,前半部分有代码说明,但后半部分的代码,太过琐碎,就没有整理
安卓艺术开发探索读书笔记,EffectiveJava读书笔记. 收集各大神博客以及安卓笔记,安卓面试笔记等方便手机端查看. 更新说明 v2.2.2 1.增加了一些最近在学习比较好的安卓大神的博客. 2.增加了来自GeniusVJR整理的安卓...
loveincode's notes 学习工作中的一些记录,收藏。 操作系统 , 编译原理 , 计算机网络 , 互联网协议... 常用数据结构与算法 Java 实现 数据结构 与 排序算法 ...读书笔记 Effective Java , HTTP权威指南 , Java
java软件笔试题 my notebook 我的笔记本,大部分是在大二大三的时候写的笔记,对于已经毕业的来说可能比较基础甚至naive。...7:读书笔记 thinking in java effective java Android开发艺术探索 Android插件化开发指南
作者HotBitmapGG,源码StudyProject,一款 Material Design 风格的 AndroidRank 干货学习客户端,需要...安卓艺术开发探索读书笔记,EffectiveJava 读书笔记. 收集各大神博客以及安卓笔记,安卓面试笔记等方便手机端查看.
Essential .NET 读书笔记 [第一部分] NET FrameWork的Collections支持 .NET的反射在软件设计上的应用 关于跨程序集的反射 实现C#和VB.net之间的相互转换 深入剖析ASP.NET组件设计]一书第三章关于ASP.NET运行原理讲述...