第六十条:优先使用标准的异常

专家级程序员与缺乏经验的程序员的一个最主要的区别在于,专家追求并且通常也能够实现高度的代码重用。代码重用是值得提倡的。

这是一条通用的规则,异常也不例外。Java平台类库提供了一组基本的未受检的异常,它们满足了绝大多数API的异常抛出需要。

最经常被重用的异常时 IllegalArgumentException。当调用者传递的参数值不合适的时候,往往就会抛出这个异常。例如,假设

一个参数代表了“某个动作的重复次数”,如果程序员给这个参数传递一个负数,就会抛出这个异常。

另一个经常被重用的异常时 IllegalStateException。如果在某个对象被正确的初始化之前,调用者就企图使用这个对象,就会抛出

这个异常。

可以这么说,所有错误的方法调用都可以被归结为非法参数或者非法状态,但是还有一些其他的标准异常也被用于某些特定情况下的

非法参数和非法状态。

NullPointerException                            在参数值不能为null的情况下参数值为null  抛出空指针异常

IndexOutOfBoundsException                下标参数值越界  抛出索引越界异常

ConcurrentModificationException           在禁止并发修改的情况下,检测到对象的并发修改 抛出

UnsupportedOperationException          对象不支持用户请求的方法  抛出

最后,一定要清楚。选择重用哪个异常并不总是那么的精确,因为上面的异常的使用场合并不是相互排斥的。

原文地址:https://www.cnblogs.com/wangliyue/p/4545808.html