.受检异常和非受检异常的区别

非受检异常(RuntimeException):这类异常是编程人员的逻辑问题。应该承担责任NullPointerException,ClassCastException,ArrayIndexsOutOfBoundsException,ArithmeticException(算术异常,除0溢出)

受检异常(非RuntimeException):这类异常是由一些外部的偶然因素所引起的;受检异常可以控制义务逻辑。

Exception, FileNotFoundException, IOException, SQLException.

受检异常和非受检异常的区别就是:是否强制要求调用者必须处理此异常,如果强制要求调用者必须进行处理,那么就使用受检异常,否则就选择非受检异常(RuntimeException)

 

对于方法内部主动抛出的异常:throw new Exception(),若是受检异常,则要在方法上throws Exception,若是非受检异常,则不需要这么做(可以做也可以不做)。

Service异常设计:

1.抛出带状态码RumtimeException异常

2.抛出指定类型的RuntimeException异常

一般来讲,如果系统没有别的特殊需求的时候,在开发设计中,建议使用第二种方式针对service 异常,我们可以自定义各种异常来继承RumtimeException异常。

上一篇:Syringe Mould-Syringe Plastic Mould Structure: 3 Features


下一篇:java – 时间执行Groovy与Beanshell的巨大差异