抛出处理(throw,throws)
public class Demo6 {
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
div(4, 0);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void div(int a,int b) throws Exception{
if(b==0){
throw new Exception();//抛出一个异常对象
}
int c=a/b;
System.out.println("c="+c);
}
}
抛出异常要注意的细节:
1.如果一个方法的内部抛出了一个编译时的异常对象,那么必须要在方法上声明抛出
2.如果调用了一个声明抛出编译时的异常方法,那么调用者必须要处理异常。
3.如果一个方法内部抛出了一个异常对象,那么throw语句后代码不会再执行了(一个方法遇到throw关键字,方法马上停止执行)
4.在一种情况下,只能抛出一种类型的异常对象
throw与throws两个关键字的区别:
1.throw关键字是用于方法内部的,throws是用于方法声明上的
2.throw关键字是用于方法内部抛出一个异常对象,throws关键字是用于在方法声明上声明抛出异常类型的
3.throw关键字后只能有一个异常对象,throws后面一次可以声明抛出多种类型的异常