1. 程式人生 > >檢查型異常(Checked Exception)與非檢查型異常(Unchecked Exception)

檢查型異常(Checked Exception)與非檢查型異常(Unchecked Exception)

這兩個概念看了忘,碰著了又看,老是傻傻的分不清楚,今天把心得結合從網上搜的資料簡單整理一下,希望幫自己明確區分開這兩個概念,並牢牢的記住

1.檢查型異常(Checked Exception)

  個人理解:所謂檢查(Checked)是指編譯器要檢查這類異常,檢查的目的一方面是因為該類異常的發生難以避免,另一方面就是讓開發者去解決掉這類異常,所以稱為必須處理(try ...catch)的異常。如果不處理這類異常,整合開發環境中的編譯器一般會給出錯誤提示。

  例如:一個讀取檔案的方法程式碼邏輯沒有錯誤,但程式執行時可能會因為檔案找不到而丟擲FileNotFoundException,如果不處理這些異常,程式將來肯定會出錯。所以編譯器會提示你要去捕獲並處理這種可能發生的異常,不處理就不能通過編譯。

2.非檢查型異常(Unchecked Exception)

  個人理解:所謂非檢查(Unchecked)是指編譯器不會檢查這類異常,不檢查的則開發者在程式碼的編輯編譯階段就不是必須處理,這類異常一把可以避免,因此無需處理(try ...catch)。如果不處理這類異常,整合開發環境中的編譯器也不會給出錯誤提示。

  例如:你的程式邏輯本身有問題,比如陣列越界、訪問null物件,這種錯誤你自己是可以避免的。編譯器不會強制你檢查這種異常。

                                       

相關推薦

檢查異常Checked Exception檢查異常Unchecked Exception

這兩個概念看了忘,碰著了又看,老是傻傻的分不清楚,今天把心得結合從網上搜的資料簡單整理一下,希望幫自己明確區分開這兩個概念,並牢牢的記住 1.檢查型異常(Checked Exception)   個人理解:所謂檢查(Checked)是指編譯器要檢查這類異常,檢查的目的一方面是因為該類異常的發生難以避免

初識關系數據庫SQL關系數據庫NOSQL

edi 關系型數據庫 底層 手機 col 效率 name 項目 去掉 一.關系型數據庫(SQL): Mysql,oracle 特點:數據和數據之間,表和字段之間,表和表之間是存在關系的 例如:部門表 001部分, 員工表 001 用戶表,用戶名、密碼

C++雜記:運行時類識別RTTI動態類轉換原理

程序包 bar ons Language 值類型 包括 iat www != 運行時類型識別(RTTI)的引入有三個作用: 配合typeid操作符的實現; 實現異常處理中catch的匹配過程; 實現動態類型轉換dynamic_cast。 1. typeid操

C#泛集合集合

轉自部落格: http://www.cnblogs.com/zhxhdean/archive/2011/05/18/2050186.html 在.NET平臺最初發布時,程式設計師使用System.Collections名稱空間下的ArrayList,HashTable,Queue,S

__int64 型別VC中long long gcc中,C99標準

int64 是有符號 64 位整數資料型別,也就是 C# 中的 long 和 SQL Server 中的 bigint,範圍為 -2^63 (-9,223,372,036,854,775,808) 到 2^63-1 (9,223,372,036,854,775,807),儲

Java 進階 之 檢查異常檢查異常

使用Spring難免要用到Spring的事務管理,要用事務管理又會很自然的選擇宣告式的事務管理, 在spring的文件中說道,spring宣告式事務管理預設對非檢查型異常和執行時異常進行事務回滾,而對檢查型異常則不進行回滾操作。 那麼什麼是檢查型異常什麼又是非檢查型異常

JavaScript函數節流throttle函數去抖debounce

apply 時間 gpo ava size method handler 如果 兩種方法 對於瀏覽器窗口大小改變的時候,來動態改變頁面元素的大小,可以采用window的resize事件,實現代碼: <script type="text/javascript">

MySQL第四天用戶授權撤銷,完全備份和完全恢復

運維day04一、用戶授權與撤銷數據庫管理員密碼設置?1.1修改數據庫管理員本機登錄密碼[root@db2 ~]# mysqladmin -hlocalhost -uroot -p password "123456"Enter password: mysqladmin: [Warning]

對稱DES/AES對稱RSA/SSL/數字證書加密介紹及實際應用

行數據 服務端 版本 報道 pass edi 得到 參數 crc 本文不對具體的算法做深入研究,只是講解各種安全算法的原理和使用場景。 一、數據校驗算法 數據校驗,是為保護數據的完整性,用一種指定的算法對原始數據計算出的一個校驗值。當接收方用同樣的算法再算一次校驗值,如

復制目錄下所有文件隱藏文件隱藏文件

分享 info bubuko img inf dir .com png mage cp /source-dirname/. /target-dirname(用.表示自己) 復制目錄下所有文件(隱藏文件與非隱藏文件)

JavaScript <script>標簽的位置、延遲腳本defer屬性 異步腳本async屬性

瀏覽器中 例子 title 屬性。 mco sync 4.0 syn 但是 一、<script>標簽的位置 傳統的做法是將<script>元素放在<head>元素中,例如: <!DOCTYPE html><html &

屏蔽雙絞線UTP屏蔽雙絞線STP的區別

價格 組網 而且 網絡 數據傳輸 的區別 靈活 屏蔽 同時 一、非屏蔽雙絞線(UTP)和屏蔽雙絞線(STP)的外觀區別:STP外面由一層金屬材料包裹,以減小輻射,防止信息被竊聽,同時具有較高的數據傳輸速率,但價格較高,安裝也比較復雜;UTP無金屬屏蔽材料,只有一層絕緣膠皮包

eclipse projectExplorer視圖以包的方式顯示navigator視圖切換以文件夾的方式顯示及樹狀視圖平面視圖的切換

ima cte explore src eclipse image 切換 exp 樹狀 projectExplorer與navigator的切換 projectExplorer視圖效果 想要此視圖效果步驟如下: 分割--------------------------

尖錐pointed cone尖錐

在凸優化裡面看到 pointed cone 這個概念,翻譯為尖錐。若 K K K 為一個尖錐,則

React 學習筆記 事件、約束約束性元件

事件物件 方法一 方法二 方法三 表單取值 鍵盤事件 react實現雙向資料繫結 約束性元件和非約束性元件 非約束性元件 defaultValue:<input type="text" defaultValue=‘111’/>

馬爾科夫隨機場MRF吉布斯分佈Gibbs

1. 首先由兩個定義,什麼是馬爾科夫隨機場,以及什麼是吉布斯分佈 馬爾科夫隨機場:對於一個無向圖模型G,對於其中的任意節點X_i,【以除了他以外的所有點為條件的條件概率】和【以他的鄰居節點為條件的條件概率】相等,那麼這個無向圖就是馬爾科夫隨機場 Gibbs分佈:如果無向圖模型能

物件轉型instanceof關鍵字物件的引用所指物件的型別之間各種關係

1、物件之間的轉換並非是隨意進行的轉換,在基本型別的轉換中,有自動型別轉換,還有一種強制型別轉換,但是物件型別的轉換不能強制地隨意地進行轉換,而是有一種約束,是一種上下繼承層次關係的轉換。 2、instanceof關鍵字: (1)使用方法:引用空格instanceof空格

【隨堂筆記】unity中socket的用法二、伺服器客戶端之間簡單的資料傳遞

主要實現伺服器與客戶端之間簡單的資料傳輸(單次) 伺服器程式碼 using System; using System.Net; using System.Net.Sockets; namespace SeverSocket { class Program {

單精度浮點數float雙精度浮點數double的區別:

1、單精度,也就是 float ,在 32 位機器上用 4 個位元組來儲存的;而雙精度double是用 8 個位元組來儲存的,這是他們最本質的區別。  2、由於儲存位不同,8位,16位他們能表示的數值的範圍就不同,也就是能準確表示的數的位數就不同。 單精度浮點的表示範圍:-3.40E+38

二叉樹的深度優先遍歷DFS廣度優先遍歷BFS

最近在練習劍指offer上的題,討論區看到有人提到深度優先遍歷和廣度優先遍歷,就查了一點相關知識點。 深度優先遍歷(Depth First Search,簡稱DFS)又稱深度優先搜尋,遍歷的過程是 從某個頂點出發,首先訪問這個頂點,然後找出剛訪問這個結點的第一個未被訪問的鄰結點,然後