例外をテストするために、次のサンプルクラスを作成しました。私は2つの同一のメソッドを持っています.1つはRuntimeExceptionをスローしますが、もう1つはExceptionをコンパイルしません。メソッドをスロー例外はコンパイルされていないが、RuntimeExceptionで問題はない
サンプルコード
public class Test{
public static void main(String... args){
System.out.println(3%-2);
System.out.println(4%-2);
Test t1 = new Test();
t1.mtd1(101);
t1.mtd2(101);
}
public int mtd1(int i) throws RuntimeException{
System.out.println("mtd");
return i;
}
public int mtd2(int i) throws Exception{
System.out.println("mtd");
return i;
}
}
エラー
C:\Java\B-A>javac Test.java
Test.java:10: error: unreported exception Exception; must be caught or declared to be thrown
t1.mtd2(101);
^
1 error
throws句を使用してメソッド宣言で定義された例外が1つ以上ある場合、method-callは定義されたすべての例外を処理する必要があります。try-catchを使用して処理します。 – Mihir