嗨客网搜索
Java开发环境搭建
Java方法
Java异常语法

Java异常语法教程

我们已经了解到了 Java 异常 在项目中的重要性,那么 Java 异常该怎么使用呢?

Java异常语法

语法

try{ //do something }catch(异常类型){ }catch(异常类型){ }catch(异常类型){ }finally{ //可要可不要 }

参数

参数 描述
try try 是包含逻辑处理的开始,业务逻辑在 try 代码块里面执行,如果有异常会被 catch 住
catch catch 是如果 try 代码块中的异常类型是 catch 里面的异常类型的同类或者子类,就会执行 catch 代码块代码,catch 可以有一个,也可以有多个。
finally finally 是无论 try 和 catch 里面执行完后都会执行 finally 代码块里面代码。finally 可要可不要
异常类型 异常类型都是 Exception 的子类

说明

我们在生产业务逻辑中,可以将自己不确定的业务逻辑写在 try 里面,如果有异常,就会执行 catch 里面的代码块。前提是 catch 的异常类型是实际抛出的异常的当前类或者父类。

02 异常流程.png

案例

catch一个异常信息

package com.haicoder.net.except; public class ExceptionTest { public static void main(String[] args) { System.out.println("嗨客网(www.haicoder.net)\n"); System.out.println("程序开始"); try { int i = 2; int j = 0; int m = i / j; } catch (Exception e) { System.out.println("捕获类异常,异常处理代码块!"); } System.out.println("程序结束"); } }

运行结果如下:

03 异常捕获.png

Exception 类是所有异常类型的父类,所以在 1/0 的时候被捕获了,然后执行了 catch 代码块里面的逻辑。整个代码块没有因为异常而中断继续执行了后面的流程。

catch多个异常信息

package com.haicoder.net.except; public class ExceptionTest { public static void main(String[] args) { System.out.println("嗨客网(www.haicoder.net)\n"); System.out.println("程序开始"); try { int i = 2; int j = 0; int m = i / j; System.out.println("执行我!!!"); //不会执行 } catch (ArithmeticException e) { System.out.println("捕获类异常,异常处理代码块!,异常类型 " + "ArithmeticException"); }catch (Exception e){ System.out.println("捕获类异常,异常处理代码块!,异常类型 " + "Exception"); } System.out.println("程序结束"); } }

运行结果如下

04 异常捕获多个catch.png

Java 语言中,如果执行遇到了异常,在 try 方法体里面,发生异常的语句后面的代码将不会执行。

除以 0 是算数运算错误异常,所以我们用 ArithmeticException 异常类接收。在异常信息里面,catch 捕获到了一个符合条件的异常信息后就不会再继续执行剩下的 catch 代码块了。

程序中执行了 ArithmeticException 后没有执行 Exception 异常代码块里面的代码。

Java异常语法总结

如果没有异常处理机制,在代码运行过程中发生了异常,程序代码会终止,而使用了异常处理机制,程序的代码会按照我们的意愿按照流程往下执行。这个时候,就需要我们做好异常捕获后的逻辑处理。

嗨客网顶部