javaoo 异常处理(部分上课笔记)

异常分为受检异常和运行时异常(只有运行异常直接去解决,不用去加try...catch....finall)

如果不是 runtimeException 的就是受检异常或者编译异常

e.printStackTrace(); 发出错误的地方

 

运行时异常出现的情况:

空指针 nullPointerException

下标越界 ArrayIndexOutOfBoundsException

转型异常 ClassCastException

如果要实现转型,父类要引用指向子类对象

算术异常 ArithmeticException

遇到运行时异常,我们一般的处理方式都是直接解决而不是去使用try......catch

 

编译时异常现的情况:

会在编译时期就提示错误,强制我们必须使用try.....catch的异常

除了RuntimeException之外,其他直接继承Exception的子类都是编译时异常(受检异常)

Unhandled exception type FileNotFoundException

try....catch.....finall的运行顺序

当try块中没有异常的时候,try块运行完之后跳过catch块,直接运行后面的语句

当try块中有异常的时候,try块运行到异常的语句,直接跳到catch块中

无论如何finally是最后始终要执行的语句块

如果在try块中有多个不同类型的异常需要捕获

1.直接捕获异常父类Exception就可以了

2.多个异常依次捕获,多个catch块

2.1 多个异常依次捕获,需要注意异常的顺序问题,父类异常应该在最后处理

2.2 多个异常捕获,只会进入其中的一个异常

3.try catch都是单独的语句块

posted @ 2019-12-02 17:39  现在不晓得  阅读(108)  评论(0)    收藏  举报