異常:
在程式開發過程中出現的不正常情況,就是異常。例如除數是0,參數為null,呼叫參數的成員變數或方法,數組下標越界。
異常分為兩大類型:
(1)Exception:程式設計師可以解決的:空指針,除數是0,陣列下標越界。
(2)Error:程式設計師無法解決的:如記憶體溢位。
Throwable是這兩種類型的父類
Exception的分類:
依照編譯器是否檢查進行分類:
非检查性异常:也称之为运行时异常,即编译器在检查语法期间,不做异常检查。 检查性异常:也称之为编译时异常,此时,编译器会强制检查语法中的异常情况。如有异常,在编译期需要做异常处理。
Exception的結構:
RuntimeException: NullPointerException ArrayIndexOutOfBoundsException ClassCastException IllegalArgumentExcetion NumberFormatException IOException: EOFException FileNotFoundException
異常的處理:
(1)當異常出現時,終止程式。
(2)當異常出現時,我們使用處理機制進行處理異常。無需終止程序。
体验度:尽可能的选择异常处理机制。
異常處理機制:
基本概念:
#在可能出現異常的程式碼區塊區域,進行嘗試檢查,如果出現了異常訊息,我們將這些資訊封裝成某一異常類型的對象, 然後進行捕獲與處理。
相關推薦:《常見問題》
try{ 可能出现异常的代码块 /*如果有异常,jvm会将异常信息,封装成对象 将地址信息赋值给catch中的形参 */ }catch(Exception e){ 进行处理e }
多catch語句區塊情況:
當我們在嘗試擷取例外物件時,想對多種不同的異常物件分別處理時, 需要使用多個catch語句區塊。
說明:當在try中出現了異常訊息,那麼就不會再執行try中程式碼區塊的後續部分。進入對應的catch程式碼區塊中執行處理。
多catch語句區塊情況下,catch處理的異常種類書寫順序:
先寫子類別異常類型,再寫父類別異常。
throw:拋出關鍵字,在本方法中出現的例外,不做try-catch處理。
而是丟給呼叫者處理。需要使用throw關鍵字。
throws:宣告例外關鍵字,通常用於方法的定義上,用於通知呼叫者。
(1)当throw的异常对象为检查性异常,方法上必须throws此异常类型。 (2)如果throw的异常对象为非检查性异常,方法上不必throws此异常类型。
方法重寫時的throws的用法
#可行的:
(1)可以相同。 (2)可以是部分。 (3)异常的子类型可行,也可以是多个子类型。
不行的:
##
(1)不同的异常类型,也不可以多声明不同类型的异常类型。 (2)异常的父类型不行。finally:是為try-catch提供了一個統一的出口。不管try與catch語句區塊是否發生了異常,最終都會執行finally裡的程式碼區塊 。 通常用於處理一些資源的關閉等操作: 如:讀取檔案時關閉操作,或刪除臨時檔案finally語句區塊可選。 當語句中有return時,先順序運行,若遇上return先將其返回值懸掛,然後運行一遍finally中的代碼塊後執行return(finally中沒有return時,不會對返回值產生影響)
以上是api介面異常怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3漢化版
中文版,非常好用

Dreamweaver Mac版
視覺化網頁開發工具