代码重用是通用的规则,异常也不例外
- java 平台库提供了一组基本的为受检异常
- 满足了绝大多数API的异常抛出需要
重用异常的好处:
- API 易于学习和使用
- 可读性更好
- 装载耗时更少
举例:
- Illegalargumentexception 参数不合法
- Illegalstateexception 接受者状态异常
- 再被正确初始化以前被调用
其实所有的非法方法调用都可以归结为,上述两种
- 当然,参数为null,习惯抛nullpointerexception
- 如果参数传递超出边境的值,习惯抛indexoutofboundsexception
- 如果一个对象被设计为单线程使用,或者与外部同步机制配合使用,一但被并发修改
- 抛出concurrentmodificationexception
- unsupportedoperationexception 是对象不支持所请求的操作所抛出的异常
上述是最常用异常
******************************
如果使用复数或有理数运算
- arithmeticexception
- numberformatexception
需要更多信息,请把这些异常子类化
有些时候,可能同时有多个异常满足场景
- 比如发牌游戏中,发牌的参数大于拍的总数
- 可以理解为Illegalargumentexception 或 indexoutofboundsexception