异常处理的标准格式
现在已经学习完成了大部分的异常处理格式:try、catch、finally、throws,那么这些关键字在实际的开发之中往往会一起进行使用,下面通过一个具体程序来进行分析。
现在要求定义一个可以实现除法计算的方法,在这个方法之开发要求如下:
- 在进行数学计算开始于结束的时候进行信息提示;
- 如果在进行计算的过程之中产生了异常,则要交给调用处来处理。
class JavaDemo
{
public static void main(String[] args)
{
try{
System.out.println(MyMath.div(10,0));
}catch(Exception e){
e.printStackTrace();
}
}
}
class MyMath
{
//异常要交给被调用处处理则一定要在方法上使用throws
public static int div(int x,int y) throws Exception{
int temp = 0;
System.out.println("【START】除法计算开始了");
try{
temp = x / y;
}catch(Exception e){
throw e; //向上抛异常对象
}finally{
System.out.println("【END】除法计算结束了");
}
return temp;
}
}
结果:
【START】除法计算开始了
【END】除法计算结束了
java.lang.ArithmeticException: / by zero
at MyMath.div(异常处理模型.java:20)
at JavaDemo.main(异常处理模型.java:6)
对于此类操作实际上可以简化,省略掉catch与throw的操作
class JavaDemo
{
public static void main(String[] args)
{
try{
System.out.println(MyMath.div(10,0));
}catch(Exception e){
e.printStackTrace();
}
}
}
class MyMath
{
//异常要交给被调用处处理则一定要在方法上使用throws
public static int div(int x,int y) throws Exception{
int temp = 0;
System.out.println("【START】除法计算开始了");
try{
temp = x / y;
}
}finally{
System.out.println("【END】除法计算结束了");
}
return temp;
}
}
在以后实际开发过程之中,这种异常处理格式是最为重要的,尤其是当与一些资源进行访问操作的时候尤其重要。