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

java基礎(chǔ)檢查和未檢查異常處理詳解

 更新時(shí)間:2021年10月13日 10:18:28   作者:guoyp2126  
這篇文章介紹了java基礎(chǔ)中異常的處理,主要講解了java檢查和未檢查異常處理的示例詳解有需要的朋友可以借鑒參考下,希望能夠有所幫助

程序在運(yùn)行時(shí)如果出錯(cuò),編譯器會(huì)拋出異常,異常如果沒有被捕捉處理,程序會(huì)終止運(yùn)行。異常分為未檢查異常和已檢查異常,以下對(duì)這兩類異常做進(jìn)一步說明。

檢查異常

已檢查異常(checked exceptions),編譯器強(qiáng)制要求捕獲并處理可能發(fā)生的異常,不處理就不能通過編譯,如:IOException、SQLException以及用戶自定義的Exception異常。如下圖所示,程序運(yùn)行時(shí)會(huì)因?yàn)镮O等錯(cuò)誤導(dǎo)致異常,要求處理異常,需要手動(dòng)處理關(guān)閉釋放資源。

在這里插入圖片描述

繼續(xù)拋出,通過throws exception拋出,代碼如下:

public static void readFile() throws FileNotFoundException {
        String filename = "D:\\demo1.txt";
        File file = new File(filename);
        BufferedReader reader = null;
        StringBuffer sbf = new StringBuffer();

        reader = new BufferedReader(new FileReader(file));
    }

在方法使用 throws FileNotFoundException ,將異常向上拋。

使用try catch或try catch finally對(duì)異常進(jìn)行捕獲然后進(jìn)行處理,代碼如下:

    public static void main(String[] args) {
        String filename ="D:\\demo.txt";
        File file =new File(filename);
        BufferedReader reader=null;
        StringBuffer sbf = new StringBuffer();

        try {
            reader = new BufferedReader(new FileReader(file));
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } finally {
        }
    }

未檢查異常

未檢查異常(unchecked exceptions),這類異常也叫RuntimeException(運(yùn)行時(shí)異常),編譯器不要求強(qiáng)制處置的異常,如:NullPointerException,IndexOutOfBoundsException,VirtualMachineError等異常。如:以下代碼向上拋出異常,但調(diào)用時(shí)編譯器并不強(qiáng)制要求處理異常

public static void convert(String str) throws NumberFormatException{
        Long num = Long.parseLong(str);
        System.out.println(num);
    }

調(diào)用方代碼如下:

public static void main(String[] args) {
        convert("ww123");
    }

編譯器并未出現(xiàn)強(qiáng)制要求使用處理異常,因?yàn)镹umberFormatException異常是RuntimeException(運(yùn)行時(shí)異常)。未檢查異常通常處理方法為捕獲、繼續(xù)拋出和不處理,這類異常通常輸出至控制臺(tái),編程人員手動(dòng)的去查找問題。

總結(jié)

檢查異常是編譯器強(qiáng)制要求捕獲并處理可能發(fā)生的異常,包括IOException、SQLException以及用戶自定義的Exception等;未檢查異常是編譯器不強(qiáng)制要求捕獲并處理可能發(fā)生的異常,包括RuntimeException類異常。JDK常見異常類圖如下:

在這里插入圖片描述

以上就是java基礎(chǔ)檢查和未檢查異常處理詳解的詳細(xì)內(nèi)容,更多關(guān)于java檢查和未檢查異常處理的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Java多線程之定時(shí)器Timer的實(shí)現(xiàn)

    Java多線程之定時(shí)器Timer的實(shí)現(xiàn)

    定時(shí)/計(jì)劃功能在Java應(yīng)用的各個(gè)領(lǐng)域都使用得非常多,比方說Web層面。本文主要為大家介紹了Java多線程中定時(shí)器Timer的實(shí)現(xiàn),感興趣的小伙伴可以了解一下
    2022-10-10
  • Java中PrintWriter使用方法介紹

    Java中PrintWriter使用方法介紹

    這篇文章主要介紹了Java中PrintWriter使用方法介紹,文章圍繞主題展開PrintWriter使用方法的詳細(xì)介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下
    2022-06-06
  • SpringBoot 在項(xiàng)目啟動(dòng)之后執(zhí)行自定義方法的兩種方式小結(jié)

    SpringBoot 在項(xiàng)目啟動(dòng)之后執(zhí)行自定義方法的兩種方式小結(jié)

    這篇文章主要介紹了SpringBoot 在項(xiàng)目啟動(dòng)之后執(zhí)行自定義方法的兩種方式小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法

    Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法

    這篇文章主要介紹了Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法,通過兩個(gè)簡(jiǎn)單實(shí)例分析了java通過socket實(shí)現(xiàn)UDP發(fā)送與接收的技巧,需要的朋友可以參考下
    2015-05-05
  • java如何用正則表達(dá)式匹配與提取字符串

    java如何用正則表達(dá)式匹配與提取字符串

    一位以前的同事在群里面突然發(fā)了個(gè)需求,要通過正則表達(dá)式來取值,下面這篇文章主要給大家介紹了關(guān)于java如何用正則表達(dá)式匹配與提取字符串的相關(guān)資料,需要的朋友可以參考下
    2022-06-06
  • 關(guān)于MyBatis各種SQL操作詳解

    關(guān)于MyBatis各種SQL操作詳解

    這篇文章主要介紹了關(guān)于MyBatis各種SQL操作詳解,MyBatis 是一款優(yōu)秀的半自動(dòng)的ORM持久層框架,它支持自定義 SQL、存儲(chǔ)過程以及高級(jí)映射,需要的朋友可以參考下
    2023-05-05
  • Java中static變量能繼承嗎

    Java中static變量能繼承嗎

    這篇文章主要介紹了Java中static變量能繼承,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • 使用Java發(fā)送帶附件的附件的示例

    使用Java發(fā)送帶附件的附件的示例

    這篇文章主要介紹了使用Java發(fā)送帶附件的附件的方法,使用到了JavaMail這個(gè)API,需要的朋友可以參考下
    2015-11-11
  • Java SPI機(jī)制詳細(xì)介紹

    Java SPI機(jī)制詳細(xì)介紹

    大家好,本篇文章主要講的是Java SPI機(jī)制詳細(xì)介紹,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • hibernate中的對(duì)象關(guān)系映射

    hibernate中的對(duì)象關(guān)系映射

    hibernate中的ORM映射文件通常以.hbm.xml作為后綴。使用這個(gè)映射文件不僅易讀,而且可以手工修改,也可以通過一些工具來生成映射文檔,下文給大家詳細(xì)的介紹hibernate中的對(duì)象關(guān)系映射,需要的朋友參考下吧
    2017-09-09

最新評(píng)論