先決條件: Java 中的拋出和拋出
throw 和 throws 是 Java 中異常處理的概念,其中 throw 關鍵字從方法或代碼塊中顯式拋出異常,而 throws 關鍵字用於方法的簽名中。
Java 中的 throw 和 throws 的區別是:
S. No. |
Key Difference |
throw |
throws |
---|---|---|---|
1. | 使用點 | 扔關鍵字在函數內部使用。當需要邏輯拋出異常時使用它。 | 拋出函數簽名中使用關鍵字。當函數中有一些可能導致異常的語句時使用它。 |
2. | 拋出異常 | 扔關鍵字用於顯式拋出異常。它一次隻能拋出一個異常。 | 拋出可以使用關鍵字聲明多個異常,用逗號分隔。無論發生哪種異常,如果與聲明的異常匹配,都會自動拋出。 |
3. | Syntax | 語法為扔關鍵字包含要拋出的異常的實例。語法方麵的 throw 關鍵字後麵跟著實例變量。 | 語法為拋出關鍵字包括要拋出的異常的類名。語法方麵的 throws 關鍵字後麵是異常類名稱。 |
4. | 異常的傳播 | 扔關鍵字無法傳播已檢查的異常。它僅用於傳播未使用 throws 關鍵字檢查的未經檢查的異常。 | 拋出關鍵字僅用於傳播已檢查的異常。 |
例子
1.Java拋出
Java
// Java program to demonstrate the working
// of throw keyword in exception handling
public class GFG {
public static void main(String[] args)
{
// Use of unchecked Exception
try {
// double x=3/0;
throw new ArithmeticException();
}
catch (ArithmeticException e) {
e.printStackTrace();
}
}
}
輸出:
java.lang.ArithmeticException at GFG.main(GFG.java:10)
2.Java拋出異常
Java
// Java program to demonstrate the working
// of throws keyword in exception handling
import java.io.*;
import java.util.*;
public class GFG {
public static void writeToFile() throws Exception
{
BufferedWriter bw = new BufferedWriter(
new FileWriter("myFile.txt"));
bw.write("Test");
bw.close();
}
public static void main(String[] args) throws Exception
{
try {
writeToFile();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
輸出:
java.security.AccessControlException: access denied ("java.io.FilePermission" "myFile.txt" "write") at GFG.writeToFile(GFG.java:10)
相關用法
- Java this和this()的區別用法及代碼示例
- Java toDegrees()用法及代碼示例
- Java toRadians()用法及代碼示例
- Java trustStore和keyStore的區別用法及代碼示例
- Java String compareToIgnoreCase()用法及代碼示例
- Java String compareTo()用法及代碼示例
- Java String split()用法及代碼示例
- Java String length()用法及代碼示例
- Java String replace()用法及代碼示例
- Java String replaceAll()用法及代碼示例
- Java String substring()用法及代碼示例
- Java String equals()用法及代碼示例
- Java String equalsIgnoreCase()用法及代碼示例
- Java String contains()用法及代碼示例
- Java String indexOf()用法及代碼示例
- Java String trim()用法及代碼示例
- Java String charAt()用法及代碼示例
- Java String toLowerCase()用法及代碼示例
- Java String concat()用法及代碼示例
- Java String valueOf()用法及代碼示例
- Java String matches()用法及代碼示例
- Java String startsWith()用法及代碼示例
- Java String endsWith()用法及代碼示例
- Java String isEmpty()用法及代碼示例
- Java String intern()用法及代碼示例
注:本文由純淨天空篩選整理自AnushkaKhattri大神的英文原創作品 Difference Between throw and throws in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。