java异常的分类

异常分类:

编译时被检查异常;     ---> Checked异常

在程序中必须使用try...catch处理;

编译时不被检测的异常;      ---> Runtime异常

可以不使用try...catch处理,但一旦出现异常就将由JVM处理。

 

异常的分类之Runtime异常

 

 

RuntimeException(运行时异常)是指因设计或实现方式不当而导致的问题.

说白了,就是程序员造成的,程序员小心谨慎是完全可以避免的异常.比如,事先判断对象是否为null就可以避免NullPointerException异常,事先检查除数不为0就可以避免ArithmeticException异常;

特点:

这种异常Java编译器不会检查它,也就说程序中出现这类异常的时候,即使不处理也没有问题,但是一旦出现异常,程序将异常终止,若采用异常处理,则会被相应的程序执行处理.

 

异常的分类之Checked异常

 

除了RuntimeException以及子类,其他的Exception及其子类都是受检查异常,我们也可以称为非RuntimeException异常.

特点:

Java编译器会检查它,也就说程序中一旦出现这类异常,要么是没有try-catch语句捕获,或throws语句没有声明抛出它,编译就不会通过,也就说这种异常,程序要求必须处理.

原文地址:https://www.cnblogs.com/fanweisheng/p/11132083.html