理解Java异常处理机制——Java异常处理的一个综合实例

理解Java异常处理机制——Java异常处理的一个综合实例

                                   佟强 2009年12月8日

声明抛出异常

  • 如果程序员不想在当前方法内处理异常,可以使用throws语句声明将异常抛出到调用方法中。
  • 调用方法也可以将异常再抛给其他调用方法。
  • 如果所有的方法都选择了抛出此异常,最后Java虚拟机将捕获它,输出相关的错误信息,并终止程序的运行。
  • 在异常被抛出的过程中,任何方法都可以捕获异常并进行相应的处理。

捕获异常

  • 捕获异常需要使用try、catch、finally构成的语句块。
  • try语句块中是可能抛出异常的代码,如果一条语句抛出了异常,其后续语句不会继续执行,而是转到catch进行异常类型匹配。
  • catch语句块负责捕获指定类型的异常并进行处理。
  • finally语句块是可选的,一般用于释放资源,无论是否发生异常,finally语句块总会执行。
  • 由于继承,在有多个异常需要捕获时,异常类型的顺序很重要。
  • getMessage()方法返回一个对发生的异常进行描述的字符串。
  • printStackTrace()方法打印方法的调用序列,一直到异常的产生位置。
    try{
        //可能抛出异常的代码
    }catch(ExceptionType1 e1){
        //抛出异常ExceptionType1时的异常处理代码
    }catch(ExceptionType2 e2){
        //抛出异常ExceptionType2时的异常处理代码
    }finally{
        //无论是否抛出异常,都会执行的代码
    }

抛出异常

  • 不仅Java系统的类可以抛出异常,用户程序也可以抛出异常。
  • 通过throw语句来抛出异常对象。
    throw new ExceptionType1();

声明异常类

  • 除了使用系统预定义的异常类外,用户还可以声明自己的异常类。
  • 用户自定义的异常类必须是Exception的子类。
    public class MyException extends Exception{
        public MyException(){
            super("发生异常了!");
        }
    }
 
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值