1、尽可能的减小try块
2、利用finally关键字保证所有资源都被正确的释放
3、catch语句应当尽量指定具体异常类型,不要一个Exception 处理所有可能的异常
4、捕获了异常,就要对它进行适当的处理。不要捕获异常之后又把它丢弃,不予理睬
5、在异常处理模块中提供适量的错误原因信息,组织错误信息使其易于理解和阅读
6、不要在 finally 块中处理返回值
7、不要在构造函数中抛出异常
8、不要在循环语句中包裹try/catch
9、不要将异常用于控制流