異常-try...catch的方式處理異常2
package cn.itcast_01;
/*
* A:一個異常,前面已經講過了
*
* B:二個異常的處理
* a:每一個寫一個try...catch
* b:寫一個try,多個catch
* try{
* ...
* }catch(異常類名 變數名) {
* ...
* }
* catch(異常類名 變數名) {
* ...
* }
* ...
*
* 注意事項:
* 1:能明確的儘量明確,不要用大的來處理。
* 2:平級關係的異常誰前誰後無所謂,如果出現了子父關係,父必須在後面。
*
* 注意:
* 一旦try裡面出了問題,就會在這裡把問題給丟擲去,然後和catch裡面的問題進行匹配,
* 一旦有匹配的,就執行catch裡面的處理,然後結束了try...catch,繼續執行後面的語句。
*/
public class ExceptionDemo {
public static void main(String[] args) {
// method2();
// method3();
method4();
}
public static void method4() {
int a = 10;
int b = 0;
int[] arr = { 1, 2, 3 };
try {
System.out.println(a / b);
System.out.println(arr[3]);
System.out.println("這裡出現了一個異常,你不太清楚是誰,該怎麼辦呢?");
} catch (ArithmeticException e) {
System.out.println("除數不能為0");
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("你訪問了不該的訪問的索引");
} catch (Exception e) {//Exception它可以匹配所有的異常,爺爺在最後
System.out.println("出問題了");
}
System.out.println("over");
/*
try {
System.out.println(a / b);
System.out.println(arr[3]);
System.out.println("這裡出現了一個異常,你不太清楚是誰,該怎麼辦呢?");
} catch (Exception e) {//爺爺在前面是不可以的
System.out.println("出問題了");
} catch (ArithmeticException e) {
System.out.println("除數不能為0");
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("你訪問了不該的訪問的索引");
}
System.out.println("over");*/
}
// 兩個異常的處理,寫一個try,多個catch
public static void method3() {
int a = 10;
int b = 0;
int[] arr = { 1, 2, 3 };
try {
//一旦try裡面出了問題,就會在這裡把問題給丟擲去,然後和catch裡面的問題進行匹配,
//一旦有匹配的,就執行catch裡面的處理,然後結束了try...catch,繼續執行後面的語句。
System.out.println(a / b);
System.out.println(arr[3]);
//System.out.println(arr[3]);
//System.out.println(a / b);
} catch (ArithmeticException e) {
System.out.println("除數不能為0");
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("你訪問了不該的訪問的索引");
}
System.out.println("over");
}
// 兩個異常的處理,每一個寫一個try...catch
public static void method2() {
int a = 10;
int b = 0;
try {
System.out.println(a / b);
} catch (ArithmeticException e) {
System.out.println("除數不能為0");
}
int[] arr = { 1, 2, 3 };
try {
System.out.println(arr[3]);
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("你訪問了不該的訪問的索引");
}
System.out.println("over");
}
}
相關文章
- 異常-try...catch的方式處理異常1
- 異常-throws的方式處理異常
- RFT的異常處理方式
- 異常篇——異常處理
- 異常處理與異常函式函式
- 異常處理
- c++ 異常處理(2)C++
- 什麼是異常?python處理異常的方式有幾種?Python
- Java 異常表與異常處理原理Java
- restframework 異常處理及自定義異常RESTFramework
- Java異常處理的兩種方式以及自定義異常的使用方法Java
- JavaScript 異常處理JavaScript
- ThinkPHP 異常處理PHP
- React 異常處理React
- 08、異常處理
- Java 異常處理Java
- JAVA 異常處理Java
- JAVA異常處理Java
- Abp 異常處理
- oracle異常處理Oracle
- PowerShell 異常處理
- plsql異常處理SQL
- Swift 異常處理Swift
- JS異常處理JS
- app異常處理APP
- Oracle 處理異常Oracle
- MySQL異常處理MySql
- 異常處理 (轉)
- MVC使用異常過濾器處理異常MVC過濾器
- windows核心程式設計---未處理異常,向量化異常處理與C++異常Windows程式設計C++
- 異常處理機制(二)之異常處理與捕獲
- GoldenGate常見異常處理Go
- JDK執行緒池異常處理方式JDK執行緒
- C#自定義異常 統一異常處理C#
- MySQL定義異常和異常處理詳解MySql
- 異常處理的反模式模式
- Python異常處理Python
- PHP 核心 - 異常處理PHP