JAVA异常详解
java错误与异常
异常
导致程序中断运行的一种指令流。不处理异常,可能导致程序的中断执行
处理异常,增进程序的稳定性及效率。
错误
指程序运行时遇到的硬件或操作系统的错误。
错误对于程序而言时致命的,将导致程序无法运行,而且程序本身不能处理错误,只能依靠外界干预,否侧会一直处于非正常状态。
例如:没有找到.Class文件;.class文件中没有main()方法等。
java错误类和异常类(Throwable类是它们的父类)
Error类(错误类)
Error类对象由java虚拟机生成并抛出给系统,有内存溢出错误、栈溢出错误、动态链接错误等。
Exception类(异常类)
Exception类对象是java程序捕获和处理的对象。
异常处理语句
抛出(throw)异常 ——创建一个异常类对象的过程。
捕获(catch)异常 ——获得异常类对象的过程。
1.异常处理语句语法
try
{
语句1 //存在潜在异常的代码
}
catch(异常类 异常对象) //子句可以有一个或多个,但至少一个
{
语句2 //捕获到异常并进行处理的代码
}
finally //子句可以省略
{
语句3 //最后必须执行的代码,无论是否捕获到异常
}
抛出异常
throw 异常对象。
由throw语句抛出的异常也必须由try语句捕获并处理。
方法声明抛出异常的throws子句
如果一个方法的方法体将产生异常,而该方法体中不想处理或不能处理该异常,测可以在方法声明时,采用throws子句声明该方法将抛出异常。
[修饰符] 返回类型 方法(参数列表)[throws 异常类(可以声明多个)]
例: public static int parseInt(String s)throws NumberFormatException