關鍵區別——java中的檢查異常與未檢查異常
異常是運行時錯誤。有兩種類型的異常稱為檢查異常和未檢查異常。當發生選中的異常時,Java應用程序連接到外部資源,如文件、設備或數據庫。這些異常由編譯器檢查。檢查的異常的一些示例包括IO異常和FileNotFound異常。當發生未檢查的異常時,應用程序不會連接到任何外部資源。編譯器不檢查這些異常。未檢查異常的一些示例包括算術異常和ArrayOutOfBound異常。本文討論Java中checked和unchecked異常之間的區別。Java中checked異常和unchecked異常之間的關鍵區別在於編譯器檢查checked異常,而編譯器不檢查checked異常。
目錄
1. 概述和主要區別
2. Java中的檢查異常是什麼
3. 什麼是Java中的未檢查異常
4. Java中Checked和Unchecked異常的相似性
5. 並行比較——Java中以表格形式顯示的選中異常與未檢查異常
6. 摘要
什麼是java中的檢查異常(checked exception in java)?
當發生選中的異常時,Java應用程序連接到外部資源。此資源可以是打印機等設備。它可以是文件或數據庫。因此,編譯器會檢查這些異常。IO異常是已檢查的異常。它是由於設備中的錯誤而發生的。當應用程序訪問不存在的文件時,它將導致FileNotFound異常。應用程序可以連接到MySQL、Oracle等數據庫來存儲數據。如果發生與數據庫相關的錯誤,則是SQL異常。這些是一些檢查異常的例子。在所有這些中,應用程序都連接到外部資源。在選中的異常中,必須處理異常。如果不進行處理,程序的正確流將終止,並且不會生成類文件。可以使用try,catch塊來處理錯誤。
根據上述內容,FileReader從文件中讀取數據。text1.txt文件在指定位置不存在。可以給出異常的代碼放在try塊中。要打印的消息在catch塊中。由於沒有名為text1.txt的文件,這將導致FileNotFoundException。通過使用異常處理,消息被打印到屏幕上。
什麼是java中未檢查的異常(unchecked excepti*** in java)?
編譯器不檢查未檢查的異常。與選中的異常不同,除了未選中的異常,Java應用程序不連接到外部資源,如文件、數據庫或設備。一些常見的未檢查異常是算術異常、ArrayOutOfBound異常和null指針異常。
內a=10,b=0;
int div=a/b;
System.out.println(分部);
這將導致算術異常,因為將“a”除以0。參考以下代碼。
根據上述程序,變量a是整數值。變量b為0。這兩個數的除法是除零。因此,它將導致算術異常。可以使用try-catch塊處理它。可能導致異常的語句放在try塊內。要顯示的消息位於catch塊中。
參考下面的代碼。
int array1[]={1,2,3,4,5};
System.out.println(陣列1[5]);
這將導致異常。array1是一個包含5個元素的數組。數組的起始索引為零。打印第5個索引值會導致異常,因為它超出了界限。array1的最大索引為4。
根據上述程序,array1有5個元素。打印索引為6的元素將導致異常,因為它是越界的。array1中可以存儲的最大索引是5。通過執行catch塊打印錯誤消息。
什麼是java中checked與unchecked異常的相似性(the similarity between checked and unchecked exception in java)?
- Java中的Checked和Unchecked異常都是Java中的異常類型。
選中的(checked)和java中的未檢查異常(unchecked exception in java)的區別
Java中的Checked vs Unchecked異常 | |
檢查的異常是由編譯器檢查的運行時錯誤。 | 未檢查異常是編譯器未檢查的運行時錯誤。 |
發生 | |
當發生選中的異常時,Java應用程序連接到外部資源,如文件、設備或數據庫。 | 當發生未檢查的異常時,Java應用程序不會連接到外部資源。 |
示例 | |
IOException、FileNotFoundException、SQLException是檢查異常的一些示例。 | 算術異常、ArrayOutOfBoundException、NullPointerException是未檢查異常的一些示例。 |
總結 - 選中的(checked) vs. java中的未檢查異常(unchecked exception in java)
異常是中斷程序流執行的事件。有兩種例外情況。它們被稱為檢查異常和未檢查異常。本文討論了檢查異常和未檢查異常之間的區別。Java中checked和unchecked的區別在於編譯器檢查checked異常,而編譯器不檢查checked異常。由於異常會影響程序執行的正確流程,因此處理異常是一個很好的編程實踐。