Heim >Java >javaLernprogramm >Wann sollte die Methode fillInStackTrace() in Java verwendet werden?

Wann sollte die Methode fillInStackTrace() in Java verwendet werden?

WBOY
WBOYnach vorne
2023-08-19 15:01:091433Durchsuche

Wann sollte die Methode fillInStackTrace() in Java verwendet werden?

In Java ist fillInStackTrace() eine wichtige Methode in der Throwable-Klasse. Mithilfe von Stacktraces lässt sich ermitteln, wo genau eine Ausnahme ausgelöst wurde. In einigen Fällen müssen wir die Ausnahme möglicherweise erneut auslösen und herausfinden, wo sie erneut ausgelöst wurde. In diesem Fall können wir die Methode fillInStackTrace() verwenden. Die chinesische Übersetzung von

Grammar

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

Example

ist:

Example

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();
      }
   }
}

Output

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)

Das obige ist der detaillierte Inhalt vonWann sollte die Methode fillInStackTrace() in Java verwendet werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen