方法之后+throws Exception :声明该方法可能有异常,当出现异常时,则会向外抛出异常
以下例子:
case1:
public class ExecptionTest {public static void main(String[] args) throws Exception/*声明:对异常不做处理,收到异常则向外抛出异常*/{DivDemo myDiv=new DivDemo();int resultD=myDiv.div(10,0);System.out.println("result="+resultD);System.out.println("结束战斗");}
}class DivDemo{public int div(int num1,int num2) throws Exception/*声明异常:调用该方法可能会出现异常,if(异常)向外抛出异常*/ {return num1/num2;}
}
运行结果
case2:
public class ExecptionTest {public static void main(String[] args) {DivDemo myDiv=new DivDemo();try {int resultD=myDiv.div(10,0);System.out.println("result="+resultD);}catch(Exception e){e.printStackTrace();}System.out.println("结束战斗");}
}
class DivDemo{public int div(int num1,int num2) throws Exception/*声明异常:调用该方法可能会出现异常,if(异常)向外抛出异常*/ {return num1/num2;}
}
运行结果:
通过上述例子比较:
throws exception 和 try catch均用来捕捉异常
前提要在可能会抛出异常的方法后面进行异常声明 ,即方法后加+throws Exception
调用方法时 使用throws Exception时,遇到异常则终止程序,不再执行之后的语句
后者,捕捉到异常后,执行catch内的语句,程序不会终止,跳出try catch后会继续执行之后的语句