在Java中,程序一旦遇到异常,程序就无法继续向下执行。
1.2.Java异常的结构在Java中,异常的父类或超类是Throwable,而不是我们猜测的Exception,实际上,Error和Exception是Throwable两个的子类
Error:错误,有虚拟机生成并脱出,程序员不能控制,也不关注
Exception:异常,分为编译时异常|运行时异常
编译时异常:编译期间遇到异常,不处理,程序就无法运行
运行时异常:运行期间遇到的异常,可以通过增强程序的健壮性来解决
空指针异常 NullPointerException
数组索引越界 ArrayIndexOutOfBoundsException
类型转换 ClassCastException
数学异常 ArithmeticException
数学格式转换异常 NumberFormatException
throws [异常类型]
当我们一个方法中编写的代码可能会遇到异常的时候,我们可以通过throws将可能遇到的这个异常抛出,让调用方法的内容来解决这个异常
1.4.2.异常捕获try {} catch() {}
在try后面的{}中,将可能出现异常的代码块放到其中;在catch语句中,对应不同的异常语句执行不同的对应执行代码。
1.4.3.注意事项 1.无论是编译时异常还是运行时异常,都可以通过这两种方式解决;却别在于,编译时异常,只能通过这两种,运行时异常则还可以通过健壮性来解决
2.一个try后面可以接1-n个catch,当try中的代码遇到异常的时候,try中后面的代码不会执行,会直接判断catch,多个catch语句从上到下进行判断,如果找到对应的catch,执行{}中的执行代码。
3.存在多个catch时,大范围类型得到catch捕获放在最后面
4.可选择添加finally:无论是否遇到异常,结束之前都会执行finally中的代码
所谓的自定义异常就是自己创建地一个处理某个异常地类,这个类需要满足一定的条件。
编译时异常:需要直接或间接地继承自Exception
运行时异常:需要直接或间接地继承自RuntimeException
语法:
throw 制造异常



