一、概念和分类
二、作用
三、处理方式
1、JVM默认的处理方式
2、自己处理(捕获异常)
问题一:如果try中没有问题怎么办?
执行完毕try里面的代码,不会执行catch里面的代码;只有出现了异常,才会执行catch里面的代码;
问题二、如果try出现多个问题怎么办?
需要写多个catch与之对应,如果异常存在父子关系,那么要将父类写在最后面
问题三、如果try出现的问题没有被捕获怎么办?
最终交给虚拟机处理,将异常信息打印在控制台,并停止程序运行
问题四、如果try出现遇到了问题,那么try剩余的代码怎么办?
剩余的代码就不会执行了,直接跳转到catch中处理异常,如果没有catch,那么会交给虚拟机处理异常
printStackTrace()只是打印信息,不会停止程序运行
3、抛出异常
抛出异常后,调用者捕获异常:
综合案例: 在JavaBean中抛出异常:
在方法中捕获异常并处理:
四、自定义异常
为了让控制台的报错信息更加见名知意