欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java異常級別與捕獲的示例代碼

 更新時(shí)間:2021年07月11日 11:31:05   作者:G_whang  
本次模擬一個異常實(shí)例,驗(yàn)證一下異常的捕獲,通過實(shí)例代碼給大家解析java異常級別與捕獲的操作方法,感興趣的朋友跟隨小編一起看看吧

這個是jdk 1.8文檔中異常的種族描述

在這里插入圖片描述

可以看出Java異常體系的根類是 Throwable, 當(dāng)在java代碼中寫throw拋出異常時(shí),后面跟的對象必然是Throwable或其子類的對象。
然后往下又分為 Exception(異常) 和 Error

其中Exception異常是指一些可以恢復(fù)的異常, 例如常見的NullPointerException空指針異常。

Error指的是一些致命的錯誤,無法通過程序代碼手段恢復(fù)的異常,例如OutOfMemoryError內(nèi)存溢出錯誤。

如果能善用異常機(jī)制那么代碼使用就會大大提高

本次模擬一個異常實(shí)例,驗(yàn)證一下異常的捕獲
代碼如下

public class ExceptionTest {

    public static void main(String[] args) {

        try{
            int i = subtraction();
            System.out.println(i);
        }catch (Exception e){
            System.out.println("異常 Exception 被捕獲 異常信息為:"+e);
            e.printStackTrace();
        }

    }

    public static int subtraction(){
        int result = 0;
        try {
             result = 10 / 0;
        }catch (RuntimeException e){
            System.out.println("運(yùn)行異常 RuntimeException 被捕獲 異常信息"+e);
            throw new RuntimeException("運(yùn)行異常");
        }
        return result;
    }

}

我在調(diào)用一個方法的時(shí)候,該方法會拋出一個runtimeException 異常
然后我調(diào)用此方法的程序可能會有其他處理操作,也做了個try…catch 處理,然后驗(yàn)證 主方法的catch是否會執(zhí)行
結(jié)果證明會執(zhí)行

在這里插入圖片描述

因?yàn)楸徽{(diào)用的方法使用throw new RuntimeException("運(yùn)行異常");
把異常給拋出來了,上面抓到異常以后就會執(zhí)行
我就是在工作中犯了此錯誤,
由于我在被調(diào)用方法catch的時(shí)候,給程序中的數(shù)據(jù)賦予,調(diào)用失敗的狀態(tài),結(jié)果異常又被調(diào)用方給捕獲,然后調(diào)用方的catch又將數(shù)據(jù)狀態(tài)改為未知異常,影響了結(jié)果的判斷
最終我將調(diào)用方代碼合并上去,然后多做了一個捕獲

public static void main(String[] args) {

        try{
            int a = 100 / 0;
        }catch (RuntimeException e){
            System.out.println("運(yùn)行異常 RuntimeException 異常信息為:"+e);
            throw new RuntimeException(e);
        }catch (Exception e){
            System.out.println("運(yùn)行異常 Exception 異常信息為:"+e);
        }
    }

在這里插入圖片描述

這次只運(yùn)行了RuntimeException 的catch 盡管異常已經(jīng)拋出,但是Exception 的catch依舊是沒有執(zhí)行

到此這篇關(guān)于java異常級別與捕獲的示例代碼的文章就介紹到這了,更多相關(guān)java捕獲異常內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java實(shí)戰(zhàn)之用hutool-db實(shí)現(xiàn)多數(shù)據(jù)源配置

    Java實(shí)戰(zhàn)之用hutool-db實(shí)現(xiàn)多數(shù)據(jù)源配置

    在微服務(wù)搭建中經(jīng)常會使用到多數(shù)據(jù)庫情形這個時(shí)候,下面這篇文章主要給大家介紹了關(guān)于Java實(shí)戰(zhàn)之用hutool-db實(shí)現(xiàn)多數(shù)據(jù)源配置的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • java之swing單選框用法實(shí)例分析

    java之swing單選框用法實(shí)例分析

    這篇文章主要介紹了java之swing單選框用法,以實(shí)例形式分析了swing圖形界面單選框的實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-09-09
  • Java中字符串轉(zhuǎn)int數(shù)據(jù)類型的三種方式

    Java中字符串轉(zhuǎn)int數(shù)據(jù)類型的三種方式

    這篇文章主要介紹了Java中字符串轉(zhuǎn)int數(shù)據(jù)類型的三種方式,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-03-03
  • Java中Redis存儲String類型會有亂碼的問題及解決方案

    Java中Redis存儲String類型會有亂碼的問題及解決方案

    在java中使用Redis存儲String類型的數(shù)據(jù)時(shí),會出現(xiàn)亂碼,我寫了一條存儲key為name,值為虎哥的字符串,然后獲取一下這個key為name的值,打印得到的值,下面通過實(shí)例代碼介紹Java中Redis存儲String類型會有亂碼的問題及解決方案,一起看看吧
    2024-04-04
  • 排序算法圖解之Java快速排序的分步刨析

    排序算法圖解之Java快速排序的分步刨析

    快速排序是通過一趟排序?qū)⒁判虻臄?shù)據(jù)分割為獨(dú)立的兩個部分,一部分的所有數(shù)據(jù)比另外一部分的所有數(shù)據(jù)要小,然后按照此方法對這兩部分分別進(jìn)行快速排序,整個過程可以遞歸進(jìn)行,以此達(dá)到整個數(shù)據(jù)變成有序序列。本文通過示例講解了快速排序的實(shí)現(xiàn),需要的可以參考一下
    2022-11-11
  • Spring Batch 如何自定義ItemReader

    Spring Batch 如何自定義ItemReader

    這篇文章主要介紹了Spring Batch 如何自定義ItemReader的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • SpringBoot中EasyExcel實(shí)現(xiàn)execl導(dǎo)入導(dǎo)出

    SpringBoot中EasyExcel實(shí)現(xiàn)execl導(dǎo)入導(dǎo)出

    本文主要介紹了SpringBoot中EasyExcel實(shí)現(xiàn)execl導(dǎo)入導(dǎo)出,實(shí)現(xiàn)了如何準(zhǔn)備環(huán)境、創(chuàng)建實(shí)體類、自定義轉(zhuǎn)換器以及編寫導(dǎo)入邏輯的步驟和示例代碼,感興趣的可以了解下
    2023-06-06
  • SpringBoot實(shí)現(xiàn)過濾器、攔截器與切片的實(shí)現(xiàn)和區(qū)別

    SpringBoot實(shí)現(xiàn)過濾器、攔截器與切片的實(shí)現(xiàn)和區(qū)別

    本文詳細(xì)介紹了使用過濾器、攔截器與切片實(shí)現(xiàn)每個請求耗時(shí)的統(tǒng)計(jì),并比較三者的區(qū)別與聯(lián)系,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02
  • IDEA關(guān)閉git管理,文件變成紅色解決方案

    IDEA關(guān)閉git管理,文件變成紅色解決方案

    在軟件開發(fā)中,當(dāng)一個文件夾內(nèi)的Java項(xiàng)目啟用Git版本控制,通常會導(dǎo)致該文件夾下所有項(xiàng)目同步開啟Git,這種做法有助于保持項(xiàng)目的一致性和可追溯性,但也可能帶來管理上的復(fù)雜性,如果需要解除某個項(xiàng)目的Git管理,可以通過IDE的設(shè)置選項(xiàng)進(jìn)行調(diào)整
    2024-10-10
  • 如果你想寫自己的Benchmark框架(推薦)

    如果你想寫自己的Benchmark框架(推薦)

    這篇文章主要介紹了如果你想寫自己的Benchmark框架,本文通過給大家分享八條軍規(guī),幫助大家理解,需要的朋友可以參考下
    2020-07-07

最新評論