java学习第三周---异常处理

    在程序运行过程中出现错误时,异常处理可以保证出现错误后,控制接下来的程序流程来操作,是选择定位错误信息,还是抛出异常,捕获异常、还是避免程序非正常退出,都取决于我们的操作。

Java异常关键字
• try – 用于将可能发生错误的代码(可能抛出异常的代码)放在try语句块之内,当try语句块内发生错误时,异常则被抛出。
• catch – 用于捕获异常。catch用来捕获try语句块中发生的异常,并在catch语句块写出解决方案。
• finally – finally语句块是必然执行的异常统一出口。只有finally块执行完成之后,才会返回来执行try或catch块中的return或throw语句。只有在程序退出或关闭的情况下,不执行finally。
• throw – 用于抛出异常。
• throws – 用于声明该方法可能抛出的异常。

异常类Exception:

IOException有:
EOFException文件已结束异常;
FileNotFoundException文件未找到异常。

ReflectiveOperationException有:
ClassNotFoundException找不到类异常;
NoSuchMethodException方法未找到异常;
NoSuchFieldException找不到属性异常。

RuntimeException有:
IndexOutOfBoundsException索引越界异常;
ArrayIndexOutOfBoundsException数组索引越界异常;
ArithmeticException算数条件异常;
NullPointerException空指针异常;
NegativeArraySizeException数组长度为负异常;
ArrayStoreException数组存储异常;
SecurityException违背安全原则异常;
IllegalArgumentException非法参数异常;
ClassCastException类型强制转换异常。

错误类Error:
JVM发出的错误操作,是代码无法操作的,无法使用catch块来捕捉Error,不能在throws子句中声明该方法可能抛出Error及其任何子类。

 

try...catch用法

    try{

    可能发生异常的代码

    }

    catch(Exception e){

        解决方案

    }

    finally{//必然执行的异常统一出口

    }

throw用法

     public void SetAge(int age) throws AgeException{

        if(age<0||age>120){

            AgeException e= new AgeException("不合理");

            throw e;

        } else{

            this.age=age;

        }

    }

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值