ホームページ >Java >&#&チュートリアル >Java で fillInStackTrace() メソッドを使用する場合は?

Java で fillInStackTrace() メソッドを使用する場合は?

WBOY
WBOY転載
2023-08-19 15:01:091435ブラウズ

Java で fillInStackTrace() メソッドを使用する場合は?

Java では、fillInStackTrace() は Throwable クラスの重要なメソッドです。スタック トレースは、例外がスローされた正確な場所を特定するのに役立ちます。場合によっては、例外を再スローして、どこで再スローされたかを調べる必要がある場合があります。この場合は、fillInStackTrace() メソッドを使用できます。

文法

<strong>public Throwable fillInStackTrace()</strong>

中国語の翻訳は次のとおりです:

public class FillInStackTraceTest {
   public static void method1() throws Exception {
      throw new Exception("This is thrown from method1()");
   }
   public static void method2() throws Throwable {
      try {
         method1();
      } catch(Exception e) {
         System.err.println("Inside method2():");
            e.printStackTrace();
            throw e.fillInStackTrace(); // <strong>calling fillInStackTrace() method</strong>
      }
   }
   public static void main(String[] args) throws Throwable {
      try {
         method2();
      } catch (Exception e) {
         System.err.println("Caught Inside Main method()");
         e.printStackTrace();
      }
   }
}

出力

Inside method2():
java.lang.Exception: This is thrown from method1()
        at FillInStackTraceTest.method1(FillInStackTraceTest.java:3)
        at FillInStackTraceTest.method2(FillInStackTraceTest.java:7)
        at FillInStackTraceTest.main(FillInStackTraceTest.java:18)
Caught Inside Main method()
java.lang.Exception: This is thrown from method1()
        at FillInStackTraceTest.method2(FillInStackTraceTest.java:12)
        at FillInStackTraceTest.main(FillInStackTraceTest.java:18)

以上がJava で fillInStackTrace() メソッドを使用する場合は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。