《Oracle Java SE编程指南》18-03:异常处理

课程封面-JavaSE-AT阿宝哥

内容导航

  • 前言
  • 1、基本语法
    • 1.1、try
    • 1.2、catch
    • 1.3、finally
  • 2、运行流程
    • 2.1、无异常情况
    • 2.2、有异常情况
  • 3、变化形式
    • 3.1、try/catch
    • 3.2、try/catch/catch
    • 3.3、try/finally
    • 3.4、try/catch/catch/finally

1、基本语法

异常处理同时使用try、catch和finally关键词,语法格式如下:


try{

        //可能会发生异常的代码

  }catch(异常类型 引用名){

        //异常处理代码

  }finally{

        // 必须执行代码

  }

1.1、try

检测不安全的代码块(发现异常)

try块中任何一条语句发生了异常,下面的代码将不会被执行,程序将跳转到异常处理代码块中,即catch块。因此,不要随意将不相关的代码放到try块中,因为随时可能会中断执行。


try{

        //可能会发生异常的代码

}

1.2、catch

catch把捕获到的类型匹配的异常捕获,保证程序能继续运行下去。

catch语句必须紧跟着try语句之后,称为捕获异常,也就是异常处理函数,一个try后面可以写多个catch,分别捕获不同类型的异常,要从子类往父类的顺序写,否则有编译错误。


catch(异常类型 引用名){

         \\异常处理代码

}

1.3、finally

finally块总是会执行的,且只能有一个finally语句。


finally{

        //必须执行的逻辑

}


2、运行流程

2.1、无异常情况

示例代码:


package com.company.project.demo030201;

public class Client {

    public static void main(String[] args) {

        try {

            System.out.println("try");

        } catch (Exception e) {

            System.out.println("Exception");

        } finally {

            System.out.println("Finally");

        }

    }
}

运行结果:


try
Finally

2.2、有异常情况

示例代码:




package com.company.project.demo030202;

public class Client {

    public static void main(String[] args) {

        try {

            // 注意:下一行会引发java.lang.ArithmeticException异常
            int a = 10 / 0;

            System.out.println("try");

        } catch (Exception e) {

            System.out.println("Exception");

        } finally {

            System.out.println("Finally");

        }

    }
}

运行结果:


Exception
Finally


3、变化形式

3.1、try/catch

3.2、try/catch/catch

3.3、try/finally

3.4、try/catch/catch/finally


持续更新,欢迎留言提议!
码字很累,多点赞多赞赏!


扫描二维码,关注AT阿宝哥

你可能感兴趣的:(《Oracle Java SE编程指南》18-03:异常处理)