の Java がキーワードをスローする 例外を宣言するために使用されます。これは、例外が発生する可能性があるという情報をプログラマに提供します。したがって、プログラムの通常の流れを維持できるように、プログラマが例外処理コードを提供することをお勧めします。
例外処理は主に、チェックされた例外を処理するために使用されます。 NullPointerException などの未チェックの例外が発生した場合は、使用前にコードをチェックしなかったプログラマの責任です。
bashのforループ
Javaスローの構文
return_type method_name() throws exception_class_name{ //method code }
どの例外を宣言する必要がありますか?
年: 次の理由により、例外のみがチェックされます。
Java の throw キーワードの利点
Checked Exception を伝播 (コール スタックに転送) できるようになりました。
これは、メソッドの呼び出し元に例外に関する情報を提供します。
Java スローの例
Java の throws 節の例を見てみましょう。この節では、チェック例外が throws キーワードによって伝播されることを説明しています。
テストスロー1.java
import java.io.IOException; class Testthrows1{ void m()throws IOException{ throw new IOException('device error');//checked exception } void n()throws IOException{ m(); } void p(){ try{ n(); }catch(Exception e){System.out.println('exception handled');} } public static void main(String args[]){ Testthrows1 obj=new Testthrows1(); obj.p(); System.out.println('normal flow...'); } }今すぐテストしてください
出力:
exception handled normal flow...
ルール: 例外を宣言するメソッドを呼び出している場合は、例外をキャッチするか宣言する必要があります。
次の 2 つのケースがあります。
ケース 1: try-catch ブロックを使用して例外を処理する
例外を処理する場合、プログラム中に例外が発生するかどうかに関係なく、コードは正常に実行されます。
テストスロー2.java
import java.io.*; class M{ void method()throws IOException{ throw new IOException('device error'); } } public class Testthrows2{ public static void main(String args[]){ try{ M m=new M(); m.method(); }catch(Exception e){System.out.println('exception handled');} System.out.println('normal flow...'); } }今すぐテストしてください
出力:
Java配列リストのソート
exception handled normal flow...
ケース 2: 例外を宣言する
- 例外を宣言した場合、例外が発生しなければコードは正常に実行されます。
- 例外を宣言して例外が発生した場合、その例外は実行時にスローされます。 投げる 例外を処理しません。
両方のシナリオの例を見てみましょう。
A) 例外が発生しない場合
テストスロー3.java
import java.io.*; class M{ void method()throws IOException{ System.out.println('device operation performed'); } } class Testthrows3{ public static void main(String args[])throws IOException{//declare exception M m=new M(); m.method(); System.out.println('normal flow...'); } }今すぐテストしてください
出力:
Javaでデータベースに接続する
device operation performed normal flow...
B) 例外が発生した場合
テストスロー4.java
import java.io.*; class M{ void method()throws IOException{ throw new IOException('device error'); } } class Testthrows4{ public static void main(String args[])throws IOException{//declare exception M m=new M(); m.method(); System.out.println('normal flow...'); } }今すぐテストしてください
出力:
投げと投げの違い
詳細については、ここをクリックしてくださいQue) 例外を再スローすることはできますか?
はい、catch ブロックで同じ例外をスローすることで可能です。