异常是在程序的运行过程中所发生的异常事件,这些异常事件都属于不正常现象,他中断指令的正常执行。
关键字:try(监控区域),catch(捕获异常)、finally(处理一些善后的工作),throw,throws(抛出异常)。
最主要的用法:
try{ //监控区域
可能发生异常的一条或者多条语句
}catch(异常名 参数名){
异常处理语句
}finally{ //无论有无异常,finally语句一定会执行的
最后异常处理语句
}
一个例子
int a=7,b=0;
int sum;
try{
sum=a/b; //监控
}catch (ArithmeticException e)
{
//如果监控区域出现异常,则捕获异常
System.out.println("捕获"+e);//捕获异常
}finally {
System.out.println("哈哈,我运行了");//善后工作,关闭操作
}
其中finally可以省略
try{
}catch(){
}
try{
}catch(){
}catch(){
}
...
finally{//可以省略
}
当出现多个catch时一定要满足异常的范围从小到大,在上面的异常范围最小
throws语句如果方法内生成一个异常,但无法确定如何处理此异常,如“找不到文件”等异常,必须将异常传送给调用方法,由他的调用方法来处理,这种情况下,方法应该用声明异常抛出,让异常对象可以从调用栈处向后传递,知道有相应的办法捕获它为止。(也就是我现在不处理这个异常,如果有人用这个方法,那你处理异常)
举个栗子:
public class lizi{
public void imlizi() throws ArithmeticException{
System.out.println("我是例子");
}
}
imlizi这个方法抛出了异常,所以调用这个方法的使用就需要用try...catch语句来捕获异常
throw语句在程序运行期间可以直接使用throw手工的抛出一个异常类的实例化对象。



