java错误、异常及异常处理方法
一、错误和异常的区别是: Error不是程序需要捕获和进行处理的,例如OutOfMemoryError(当Java虚拟机在为对象分配内存空间时,剩余的空间不够,同时也没有可以释放的内容时,将会发生这样的错误)不由程序进行捕获或处理,当Error发生时,程序将会停止。
二、java异常的处理方式可以归纳如下:1.声明抛出处理:
(1)隐式声明抛出:
这类异常的特点是:异常类型是RuntimeException或是其子类,程序方法可以对异常不做任何声明抛出或处理,直接交给调用该方法的地方去处理,程序能编译通过,不会对可能产生异常的代码行给出提示。
(2)显示声明抛出:
隐式声明抛出只能处理异常类型是RuntimeException或是其子类,如果是其他与RuntimeException相平行的异常类型,那么就不能通过隐式声明抛出来解决了,这时就可以用到显示声明抛出,只需用到此类语句:
public static void main(String args[ ]) throws 异常类型
就可以让程序编译通过了。
2.捕获处理:
捕获处理是由try-catch-finally组成的一个异常处理块构成,其格式为:
try语句块含有可能出现异常的程序代码,可能会抛出一个或多个异常,因此,try后面可跟一个或多个catch.需要指出的是:当try语句块没有异常发生时,紧跟其后的catch代码块并不被执行。
catch用来捕获异常,参数Exception object是ExceptionType类的对象,ExceptionType是Exception类或其子类,它指出catch语句中所要处理的异常类型。catch 在捕获异常的过程中,要和try语句抛出的异常类型进行比较。若相同,则在catch中进行处理;如果不相同,寻找其他的catch块再比较。