最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java異常類型及處理詳情

 更新時間:2021年09月25日 17:31:17   作者:嘻嘻碩  
這篇文章主要介紹了Java異常類型及處理, 異常指的是程序在執(zhí)行過程中,出現(xiàn)了非正常情況,導(dǎo)致了java的jvm停止。感興趣的小伙伴就和小編一起來學(xué)習(xí)下面文章的具體內(nèi)容吧

異常結(jié)構(gòu)為:

Throwable 為頂級父類

  • 子類Error為嚴重報錯 ,
  • 子類Exception就是我們所說的異常了

一、異常處理的關(guān)鍵字

java中處理異常的有五個關(guān)鍵字: trycatch 、finally throw 、throws

throw拋出異常 , thorws聲明異常 , 捕獲異常 try_catch

1、throw

public class SegmentFault {
    public static void main(String[] args) {

        /**
         *  throw 拋出異常
         *    格式 - throw new 異常類名(參數(shù));
         * */

        // 創(chuàng)建一個數(shù)組
        int [] arr = { 2, 4, 56 ,5};
        // 根據(jù)索引找到對應(yīng)的元素
        int index = 4;
        int element = getElement(arr,index);
        System.out.println(element);
        System.out.println("owo"); // 運行錯誤 無法繼續(xù)
    }
        /** throw 拋出異常 提醒你必須處理  */
    public static int getElement(int [] arr, int index){
        // 判斷數(shù)組索引是否越界
        if (index < 0  || index > arr.length -1){
            /**
             * 條件滿足越界 當執(zhí)行到throw拋出異常后就無法運行,結(jié)束方法并且提示
             * */
            throw new ArrayIndexOutOfBoundsException("數(shù)組下標越界異常");
        }
        int element = arr[index];
        return element;
    }
}    

異常結(jié)果為:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 數(shù)組下標越界異常

2、throws

public class SegmentFault{
    public static void main(String [] args){
    
        read("a.txt");
        
    }
      public static void read(String path) throws FileNotFoundException, IOException {
        if (!path.equals("a.txt")){  // 如果沒有a.txt
            // 如果不是 a.txt 該文件不存在 是一個錯誤 也就是異常 throw
            throw new FileNotFoundException("文件不存在");
        }
        if (!path.equals("b.txt")){
            throw new IOException("文件不存在");
        }
    }
    
}

異常結(jié)果為:

Exception in thread "main" java.io.IOException: 文件不存在

try、catchfinally + Throwable中的常用方法。

Throwable常用方法如下:

  • printStackTrace() : *打印異常詳細信息。
  • getMessage() : 獲取異常原因。
  • toString(): 獲取異常類型及描述信息。
public class Demo03 {
    public static void main(String[] args) {

        /**
         *  try- catch  捕獲異常
         * */


        // 可能會生成的異常
        try {     // 捕獲或者聲明
            read("b.txt");
        } catch (FileNotFoundException e) {   // 使用某種捕獲,實現(xiàn)對異常的處理
            System.out.println(e);
            /**
             *  Throwable中的查看方法
             *  getMessage 獲取異常信息  提示給用戶看的
             *  toString   獲取異常的類型和異常描述(不用)
             *  printStackTrace
             * */
            
            
            System.out.println("Throwable常用方法測試");
            System.out.println(e.getMessage()); // 文件不存在
            System.out.println(e.toString());
            e.printStackTrace();
            
            

        } finally {
            System.out.println("不管程序怎樣,這里都會被執(zhí)行");
        }

        System.out.println("over");

    }

    public static void read(String path) throws FileNotFoundException {
        if (!path.equals("a.txt")) {
            throw new FileNotFoundException("文件不存在");
        }
    }
    
}

輸出結(jié)果為:

java.io.FileNotFoundException: 文件不存在
-----Throwable常用方法測試------
文件不存在
java.io.FileNotFoundException: 文件不存在
不管程序怎樣,這里都會被執(zhí)行

注意事項 :trycatch、 finally、都不可以單獨使用

到此這篇關(guān)于Java異常類型及處理詳情的文章就介紹到這了,更多相關(guān)Java異常類型及處理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解使用zxing庫生成QR-Code二維碼

    詳解使用zxing庫生成QR-Code二維碼

    這篇文章主要介紹了詳解使用zxing庫生成QR-Code二維碼的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • springmvc處理模型數(shù)據(jù)ModelAndView過程詳解

    springmvc處理模型數(shù)據(jù)ModelAndView過程詳解

    這篇文章主要介紹了springmvc處理模型數(shù)據(jù)ModelAndView過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • Java實現(xiàn)Excel導(dǎo)入導(dǎo)出數(shù)據(jù)庫的方法示例

    Java實現(xiàn)Excel導(dǎo)入導(dǎo)出數(shù)據(jù)庫的方法示例

    這篇文章主要介紹了Java實現(xiàn)Excel導(dǎo)入導(dǎo)出數(shù)據(jù)庫的方法,結(jié)合實例形式分析了java針對Excel的讀寫及數(shù)據(jù)庫操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2017-08-08
  • Java多線程中的單例模式兩種實現(xiàn)方式

    Java多線程中的單例模式兩種實現(xiàn)方式

    這篇文章主要介紹了Java多線程中的單例模式兩種實現(xiàn)方式的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • springboot集成es詳解

    springboot集成es詳解

    這篇文章主要介紹了springboot集成es,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • SpringBoot中的自定義Banner詳細解析

    SpringBoot中的自定義Banner詳細解析

    這篇文章主要介紹了SpringBoot中的自定義Banner詳細解析,Banner即橫幅標語,我們在啟動SpringBoot項目時會將Banner信息打印至控制臺,我們可以輸出一些圖形、SpringBoot版本信息等內(nèi)容,需要的朋友可以參考下
    2024-01-01
  • springboot 跨域配置類及跨域請求配置

    springboot 跨域配置類及跨域請求配置

    這篇文章主要介紹了springboot 跨域配置類及跨域請求配置,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01
  • SpringBoot處理全局統(tǒng)一異常的實現(xiàn)

    SpringBoot處理全局統(tǒng)一異常的實現(xiàn)

    這篇文章主要介紹了SpringBoot處理全局統(tǒng)一異常的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • 面試Spring中的bean線程是否安全及原因

    面試Spring中的bean線程是否安全及原因

    這篇文章主要為大家介紹了面試中常問的Spring中bean線程是否安全及原因,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-03-03
  • Java 高并發(fā)八:NIO和AIO詳解

    Java 高并發(fā)八:NIO和AIO詳解

    本文主要介紹Java 高并發(fā)NIO和AIO 的知識,這里整理了詳細的資料,并詳細介紹了 1. 什么是NIO 2. Buffer 3. Channel 4. 網(wǎng)絡(luò)編程 5. AIO的知識,有需要的小伙伴可以參考下
    2016-09-09

最新評論

万州区| 涪陵区| 柳林县| 岳西县| 平南县| 安福县| 莲花县| 靖安县| 十堰市| 庆安县| 惠东县| 积石山| 荥阳市| 龙胜| 天祝| 稷山县| 柘城县| 视频| 宁国市| 宜川县| 家居| 额济纳旗| 沂水县| 美姑县| 富民县| 萨迦县| 广宗县| 文安县| 舟山市| 石狮市| 呼和浩特市| 和顺县| 普陀区| 南投市| 林甸县| 曲麻莱县| 黄大仙区| 开封县| 土默特左旗| 云梦县| 腾冲县|