关键词
1.try:执行可能产生异常的代码。
2.catch:捕获异常。当try中的代码块出现异常时,会抛出一个异常对象,catch会捕获异常对象,并且匹配是否为catch中的异常类型,当引发多种类型的异常时,一个try可以跟多个catch结合,catch中的异常判断类型按照先子类后父类的的顺序,一旦匹配成功,后面的catch就不会再匹配运行(匹配过程与Switch语句中的case类似)。
3.finally:无论是否发生异常,finally中的代码块都能执行(有且仅有一种情况除非遇到system.exit()语句会直接关闭虚拟机,此时finally才不会执行)。
4.throws:声明方法可能要抛出的各种异常,当声明多个异常时,用逗号把多个异常隔开。
5.throw:手动抛出异常(自定义的异常,比如分蛋糕,分的数量不可能为负数)
6.return:当方法中的语句执行到return时,会直接退出该方法,在写程序的时候,return下面写代码块是没有意义的(编译不通过),因为程序运行到return就会直接退出该方法。
7.void printStack Trace();:调用异常对象的方法,追踪堆栈的信息,找出代码出现异常的地点。
8. String getMessage():返回异常信息的描述字符串。
9. System.exit(1或者0) :中断程序,退出java虚拟机,输入1时表示异常退出,输入0时表示正常退出。
常用的异常类型
异常的处理方式
当我们调用存在异常的方法时,可以采用两种方式解决:
1.使用try-catch语句,把方法放入try语句中,处理异常。
2.调用者继续声明异常,直到遇到main方法(main方法声明的异常由java虚拟机处理)
3.对于不同的异常的处理(如图):