Javaのthrowとthrowsの違い
Java において、throw と throws は例外処理で使用されるキーワードですが、使用法と役割は異なります。
- throwキーワードは例外オブジェクトを投げるために使用されます。通常はメソッド本体内で、例外をアクティブに投げるために使用されます。例:
public void divide(int a, int b) {
if (b == 0) {
throw new ArithmeticException("除数不能为0");
}
int result = a / b;
System.out.println("结果为:" + result);
}
割り算の対象が0のときArithmeticException例外が送出されます。
- throwsキーワードをメソッド宣言で使用し、そのメソッドでスローされる可能性のある例外を宣言します。通常はメソッドシグネチャの後に、メソッド本体の前に使用されます。
public void readFile() throws IOException {
// 读取文件的代码
}
上述コードでは、readFile()メソッドはIOException例外をスローする可能性があります。
要約:
- スローはメソッド内で例外オブジェクトを投げます。
- throws はメソッド宣言でスローする可能性のある例外の型を宣言するために使います。