我試圖更好地理解何時最好使用異常處理。我不能完全理解它,所以想想如果我能得到一些常見的例子,它會幫助我理解這些事情。異常處理的一些最常見用途是什麼?
如果人們可以舉例說明THEM最常見的用法,那將非常感激。
我試圖更好地理解何時最好使用異常處理。我不能完全理解它,所以想想如果我能得到一些常見的例子,它會幫助我理解這些事情。異常處理的一些最常見用途是什麼?
如果人們可以舉例說明THEM最常見的用法,那將非常感激。
程序執行過程中可能會發生錯誤,導致程序過早關閉。
不同類型的錯誤會引發不同類型的異常,這些異常可以/必須根據情況進行處理。
雖然這是一個非常基本的概念,但在很多地方都有詳細介紹,只是Google它而已。
異常處理是程序攔截運行時錯誤,採取糾正措施,然後繼續的能力。
當您嘗試打開文件時,可能會發現異常處理的一種常見用法。如果文件不存在,它可能會使程序不可靠。爲了規避這個問題,你需要使用一個異常處理程序。這是一個打開我爲舊項目創建的文本文件的方法。
public static void openFile() {
JFileChooser getData = new JFileChooser();
if (getData.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
java.io.File dataSheet = getData.getSelectedFile();
try {
input = new Scanner (dataSheet);
}
catch (Exception e) {
GenerateInterface.theGame.printOutput("File does not exist.");
}
}
}
正如你可以看到,如果文件不存在,它捕獲(攔截)的錯誤,然後繼續運行,我寫爲異常的代碼。
異常是在執行中斷正常指令流程的程序期間發生的事件。所以你必須處理異常。 參見下面簡單的測試,例如:
public class HelloWorld {
public static void main(String[] args) {
int a;
String b="10";// if random input then it may be string instead of number
try
{
a=Integer.parseInt(b);
}
catch (Exception e) {
}
}
}
如果b變量的值將動態輸入和某人輸入字母值,而不是整數,則拋出java.lang.NumberFormatException
所以爲了安全起見,這樣的代碼,你必須把嘗試抓住塊。
如您所見,無需將變量聲明代碼放入試試catch區塊。
檢查Robert Sebesta對異常處理的看法:http://www.cs.ndsu.nodak.edu/~slator/html/CS372/sebesta-pdf/13.pdf – acdcjunior