Java教程

Java异常

本文主要是介绍Java异常,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

什么是异常

Java在运行过程当中出现的错误,比如数组下标越界,除数为0。

分为运行时异常和编译时异常,编译时异常需要编译前解决。

 

异常继承体系

 

 

 

处理异常

基本格式  

  

 

//自己处理异常
public class Test1 {
    public static void main(String[] args) {
        try {
            int[] w = {1,6,8};
            System.out.println(w[4]);           //数组越界
            System.out.println(10/0);           //除数为0
        }catch (ArrayIndexOutOfBoundsException a){
            System.out.println("数组异常");
        }
        catch (ArithmeticException b){
            System.out.println("算术异常");
        }
        catch (Exception e){                   //异常的父类 
            System.out.println("出现异常");
        }finally {
            //如果在上面 JVM终止运行了,就不会执行 finally
            //上面 return,finally依然会被执行
            System.out.println("一般用来释放资源");
        }

    }

}

 

获取异常

//获取异常
public class Test2 {
    public static void main(String[] args) {
        try {
            int h = 20 / 0;
        }catch (Exception e){
            System.out.println(e.getMessage());     //获取异常信息
            System.out.println(e.toString());       //获取异常类名和异常信息
            System.out.println(e);                  //同上
            e.printStackTrace();                    //获取出现异常位置
        }
    }
}

 

抛出异常

//抛出异常
public class Test3 {
    private Integer age;

    public void setAge(Integer age) throws Exception {
        if(age >0 && age<=150){
            this.age = age;
        }else {
            //运行时异常
            //throw new RuntimeException("年龄不正确");

            //编译时异常,必须处理,如果不处理,必须继续往上抛
            //谁调用,谁处理
            throw new Exception("年龄不正确");
        }

    }

    //异常抛给 main方法,JVM有一个默认的异常处理机制将异常处理
    public static void main(String[] args) throws Exception {
        Test3 t3 = new Test3();
        //调用 setAge方法,因为是编译时异常,必须处理

       /*
       1.自己处理异常
        try {
            t3.setAge(155);
        }catch (Exception e){
            System.out.println(e);
        }
        */

        //2.继续抛异常
        t3.setAge(200);

    }
}

 

这篇关于Java异常的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!