C++中free()與delete的區別
阿新 • • 發佈:2021-12-17
1、異常概述
異常都是從Throwable類派生出來的,而Throwable類直接從Object類繼承而來
2、異常分類
異常通常有四類:
- Error,系統內部錯誤。這類錯誤由系統進行處理,程式本身無需捕獲異
- Exception,可以處理的異常
- RuntimeException,可以捕獲,也可以不捕獲異常
- 繼承Exception的其他類,必須捕獲,通常在API文件中會說明這些方法丟擲那些異常
平常主要關注的異常是Exception下的異常,而Exception異常下又主要分為兩大類異常,一個是派生於RuntimeException的異常,一個是除了RuntimeException體系之外的其他異常
RuntimeException異常(執行時異常)通常有以下幾種:
- 錯誤型別轉換
- 陣列訪問越界
- 訪問null空指標
- 算數異常
一般來說,RuntimeException都是程式碼邏輯出現問題
非RuntimeException(受檢異常,CheckedException)一般有:
- 開啟一個不存在的檔案
- 沒有找到具有指定名稱的類
- 操作檔案異常
受檢異常是編譯器要求必須處理的異常,必須使用try catch處理,或者使用throw丟擲,交給上層呼叫者處理