java 发生异常后进行跳转_JAVA异常处理及通过异常跳转

/*

JAVA异常

catch可以跟出多个异常,

catch(Exception e)所有的异常都是Exception的了类,Exception可以处理所有的异常;所以Exception不可以放在第一个catch

throws关键字标识,

自定义异常与Throw关键字

finally{}  无论是return,break语句或者发不发生异常,该语句都会被执行;唯一不被执行System.exit(0);

*/

//下面一段程序是三种异常的实现,包含自定义异常

class Test

{

public int devide(int x,int y)throws ArithmeticException,DevideByMinusException//未报告的异常 java.lang.Exception;必须对其进行捕捉或声明以便抛

{

if(y<0)

throw new DevideByMinusException("除数为"+y);

int result=x/y;

return result;

}

}

class DevideByMinusException extends Exception

{

public DevideByMinusException (String msg)

{

super(msg);

}

}

class TestException

{

public static void main(String[] args)//throws Exception

{

try

{

//new Test().devide(3,1);

//return;

new Test().devide(3,-1);

//new Test().devide(3,0);

}

catch(ArithmeticException e)

{

System.out.println("program is running into AritMetic");

e.printStackTrace();

}

catch(DevideByMinusException e)

{

System.out.println("program is running into DevideByMinus");

e.printStackTrace();

//return;

System.exit(0);

}

catch(Exception e)

{

System.out.println(e.getMessage());

}

finally

{

System.out.println("finally");

}

System.out.println("program is running here!");

//Exception in thread "main" java.lang.ArithmeticException: / by zero

}

}

//通过异常可以实现程序的跳转/*void fun(){ try ( if(x==0)  throw new XxxException("xxx"); else  throw new YyyException("yyy");  .... ) catch(XxxException e) (  .... ) catch(YyyException e) (  .... )}*/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值