1.异常的概念:
异常实际上是程序中错误导致中断了正常的指令流的一种事件,
exception:程序运行时出现的错误;
2.捕获异常:
try{
异常语句
}
catch(Exception e){
异常处理
//打印异常
System.out.println(e);
}
finally{
必须执行语句
}
使用try...catch 表示程序出错之后可以继续向后执行;
特性:异常发生之后,发生异常的代码不在执行;
注意:try中的语句如果有错误,执行就会跳出try到catch,所以在该语句之后得到
且在try中的语句就不执行了;
如果没有发生异常,则不执行catch中的语句了;
finally块始终都会执行;
3.throws:
方法的后面加上throws后表示程序的方法不去处理任何的异常;
方法加上throws后就不用处理异常了,他会将异常向上抛,即抛给
调用该法的方法,让其处理;如果main方法也不处理异常,也是在后面
加上throws,那么就会交给throws处理。
默认情况下所有的异常都是通过jvm处理的;默认情况就是没有try catch也没有throws;
4.throw:
抛出一个异常
public class Demo{
public static void main(String args[]) {
try{
throw new Exception("自己抛出的异常");
}
catch(Exception e){
System.out.println(e);
}
}
}
一般throw语句与if一起使用:
class MathDemo{
public int div(int i,int j) throws Exception
if(j==0){
throw new Exception("被除数不能为零");
}
return i/j;
}
public class Demo{
public static void main(String args[]) {
try{
System.out.println(new MathDemo().div(10,0));
}
catch(Exception e){
System.out.println(e);
}
}
}
注意:throws表示抛出异常,不处理异常;
throw表示抛出一个异常对象;