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

JavaでのThrowableクラスとそのメソッドの重要性は何ですか?


スローアブル classは、Javaのすべてのエラーと例外のスーパークラスです。このクラスのインスタンスであるオブジェクトは、Java仮想マシンによってスローされます。 または、スローでスローできます 声明。同様に、このクラスまたはそのサブクラスの1つは、catch句の引数タイプにすることができます。

2つのサブクラスのインスタンスエラー および例外 例外的な状況が発生したことを示すために使用されます。これらのインスタンスは、関連情報を含めるために例外的な状況のコンテキストで作成されます。

Throwableクラスの一般的に使用される例外メソッド

  • public String getMessage(): 例外に関するメッセージ文字列を返します。
  • public Throwable getCause(): 例外の原因を返します。原因が不明または存在しない場合はnullを返します。
  • public String toString(): 例外の簡単な説明を返します。
  • public void printStackTrace(PrintStream s): 例外の簡単な説明(toString()を使用)+この例外のスタックトレースをエラー出力ストリーム(System.err)に出力します。

class ArithmaticTest {
   public void division(int num1, int num2) {
      try {
         //java.lang.ArithmeticException here.
         System.out.println(num1/num2);
         //catch ArithmeticException here.
      } catch(ArithmeticException e) {
         //print the message string about the exception.
         System.out.println("getMessage(): " + e.getMessage());
         //print the cause of the exception.
         System.out.println("getCause(): " + e.getCause());
         //print class name + “: “ + message.
         System.out.println("toString(): " + e.toString());
         System.out.println("printStackTrace(): ");
         //prints the short description of the exception + a stack trace for this exception.
         e.printStackTrace();
      }
   }
}
public class Test {
   public static void main(String args[]) {
      //creating ArithmaticTest object
      ArithmaticTest test = new ArithmaticTest();
      //method call
      test.division(20, 0);
   }
}

出力

getMessage(): / by zero
getCause(): null
toString(): java.lang.ArithmeticException: / by zero
printStackTrace():
java.lang.ArithmeticException: / by zero
at ArithmaticTest.division(Test.java:5)
at Test.main(Test.java:27)

  1. JavaでのSwingWorkerクラスの重要性は何ですか?

    SwingWorker クラスを使用すると、非同期を実行できます タスク ワーカースレッド(長時間実行タスクなど)で、イベントディスパッチスレッド(EDT )からSwingコンポーネントを更新します。 ) タスクの結果に基づきます。 Java1.6バージョンで導入されました。 SwingWorkerクラス java.swing.SwingWorker クラスはタスクワーカーであり、時間のかかるタスクをバックグラウンドで実行します。 SwingWorker インスタンスは3つのスレッドと相互作用します。現在 スレッド 、ワーカースレッド 、およびイベントディスパッチスレッド(E

  2. JavaでのSwingUtilitiesクラスの重要性は何ですか?

    Javaでは、Swingコンポーネントが画面に表示された後、それらはイベント処理スレッドと呼ばれる1つのスレッドでのみ操作できます。 。別のブロックにコードを記述し、このブロックにイベントへの参照を与えることができます 処理 スレッド 。 SwingUtilities クラスには、 invokeAndWait()という2つの重要な静的メソッドがあります。 およびinvokeLater() コードのブロックへの参照をイベントに配置するために使用します キュー 。 構文 public static void invokeAndWait(Runnable doRun) throws Interr