一、异常设计
异常设计主要考虑以下方面:
二、异常信息
异常信息包含:
- 错误码:异常的唯一编码。
- 错误描述:告知使用者和调用方的描述信息。
- 异常堆栈:Java开发过程中,不可避免的会有未考虑的异常场景,堆栈信息可以帮助快速解决故障。
- 异常变量:错误描述中可替换的变量,变量的实际取值可以帮助快速查找错误原因,例如:
ERR-1001=用户证件错误,用户ID:{}
其中ERR-1001是错误码,后面是错误描述,{}为可替换的变量,实际异常抛出时,可传入变量,由异常框架来统一处理。
三、异常分类
异常分类的作用是根据不同的异常类型可以走不同的处理分支,如果有这样的需要,可以对异常分类,否则可以不做区分,统一使用一个异常类则可。另外,通过对错误码分类也可以达到走不同处理分支目的,所以异常分类并不是必须的,而且定义多了使用时还得思考应该用哪一个,个人倾向简化处理。
四、处理策略
- 捕捉时机:在实际Java代码中,调用链可能如下: