先决条件: 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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。