[英]Handling exceptions in JAVA
我知道如果我們有一個沒有 try 和 catch 語句的普通代碼,那么如果發生異常,則 JVM 的默認異常處理程序會處理該異常。 我有一個代碼...
public class St
{
public static void main(String args[])
{
try
{
int y=23/0;
}
catch(Exception e)
{
System.out.println("Division by zero");
}
}
}
據我所知,在這段代碼中,異常發生在第 7 行,拋出了一個 Exception 類的對象,這就是為什么我們將 Exception 類的對象作為參數以捕獲異常。我現在到了嗎??? ?
但是為什么這段代碼顯示編譯時錯誤......
public class St
{
public static void main(String args[])
{
Exception e=new Exception();
try
{
int y=23/0;
}
catch(e)
{
System.out.println("Division by zero");
}
}
}
在此,我創建了一個類 Exception 的對象引用 e,並且我在 catch 中將其作為參數。但它沒有運行,在編譯時出錯。有人可以解釋為什么嗎???
這不是 catch 塊的工作方式。 它需要一個 ExceptionType 參數,然后是一個名稱來在它被捕獲后引用異常。 它不接受一個對象作為參數,而是一個繼承自“Throwable”的類的名稱。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.