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
<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)
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!