Java
 Computer >> コンピューター >  >> プログラミング >> Java

Java 9のJShellで例外を処理するにはどうすればよいですか?


Java 9では、 JShell Java言語機能と豊富なライブラリをすばやく探索、発見、実験できる、高速で使いやすい環境を提供します。

JShellでは、例外を手動でキャッチする必要はありません。 JShellは各例外を自動的にキャッチします それに関する情報を表示してから、次のJShellプロンプトを表示して、セッションを続行できるようにします。 未チェックで機能します 例外 また。 チェック済みの両方を自動的にキャッチする およびチェックなし 例外の場合、JShellを使用すると、チェックされた例外をスローするメソッドを簡単に試すことができます。

以下の例では、 ArrayIndexOutOfBoundsException "values [4]"の値が原因で発生しました 見つかりません。

例-1

jshell> int[] values = {10, 20, 30}
values ==> int[3] { 10, 20, 30 }

jshell> values[4]
|   java.lang.ArrayIndexOutOfBoundsException thrown: 4
|        at (#7:1)


以下の例では、 FileNotFoundException ディレクトリにファイルが見つからないために発生しました。

例-2
jshell> FileInputStream fis = new FileInputStream("data.txt")
| java.io.FileNotFoundException thrown: data.txt (The system cannot find the file specified)
|       at FileInputStream.open0 (Native Method)
|       at FileInputStream.open (FileInputStream.java:196)
|       at FileInputStream. (FileInputStream.java:139)
|       at FileInputStream. (FileInputStream.java:94)
|       at (#5:1)


以下の例では、 ArithmeticException (未チェックの例外)「 1/0」の値が原因で発生しました "は未定義です 。

例-3

jshell> 1/0
|  java.lang.ArithmeticException thrown: / by zero
|        at (#4:1)

  1. Javaでランタイム例外を処理する方法は?

    ランタイム例外は、Javaプログラミング言語のすべての例外の親クラスであり、発生したときにプログラムまたはアプリケーションをクラッシュまたは破壊することが予想されます。ランタイム例外と見なされない例外とは異なり、ランタイム例外はチェックされません。 ランタイム例外は通常、プログラムが処理することが期待される状態ではなく、プログラマーのエラーを示します。ランタイム例外は、発生しない状態が発生した場合にも使用されます。プログラムのメモリが不足すると、ランタイム例外として表示されるのではなく、プログラムエラーがスローされることに注意してください。 最も一般的なランタイム例外はNullPointe

  2. Javaの例外とその処理方法

    Java開発者は、Javaの例外と例外処理について十分な知識を持っている必要があります。 このチュートリアルでは、すべてのプログラマーがJavaプログラムを操作するときに必要な基本的な知識を提供します。まず、Java例外とは何かを理解することから始めましょう。 Java例外とは Javaプログラムで問題が発生すると、実行中にプログラムが突然終了する可能性があります。これらの問題は例外と呼ばれます。 優れたプログラマーは、実行中に発生する可能性のあるエラーを認識し、そのような例外が発生した場合にプログラムがとる代替ルートを提供できる必要があります。この方法は例外処理と呼ばれます。 ここで