【第42条】尽量使用标准的异常

    代码重用,是程序员们“千百年来”所追求的目标,同样Exception也是代码,也该尽量被重用。所以,应该尽量使用标准的异常,而不是轻易地使用自造的异常。

 

    很多的类库都定义了自己的异常,我本人所参与设计的几个项目大多数也有自己的异常。但这些异常都是仅适用于项目自身的某些情形的,换个角度说,就是这些情形下没有太合适的标准异常来表示,加之自造异常还可以做某些处理,如信息的反馈,日志、错误消息的封装等。

 

    但是,当那些常见的“低级”错误发生时,应使用相应的“定式”。记住以下标准异常吧:

 

 

IllegalArgumentException参数的值不合适。方法的开始处的参数检查,一旦有问题就该抛出这个
IllegalStateException对于这个方法调用而言,对象状态不合适。同样也是开始处检查
NullPointerException空指针
IndexOutOfBoundsException下标越界

ConcurrentModificationException

禁止并发的情况下,被检查到并发的修改

UnsupportedOperationException

不支持这种方法,如接口/抽象父类中已经定义,但尚未实现的方法

 

 

 

 

 

 

 

 

 

 

   利用类库中现有的异常是被提倡的。但有一个重要的原则,就是你使用的场景一定要复合这个异常在文档中所描述的条件

 

 

 

【Effective Java 学习笔记】系列连载专题请见:
http://tonylian.iteye.com/categories/64208

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值