V tomto programu se naučíte převádět trasování zásobníku na řetězec v Javě.
Abychom porozuměli tomuto příkladu, měli byste znát následující programovací témata Java:
- Řetězec Java
- Zpracování výjimek Java
Příklad: Převést trasování zásobníku na řetězec
import java.io.PrintWriter; import java.io.StringWriter; public class PrintStackTrace ( public static void main(String() args) ( try ( int division = 0 / 0; ) catch (ArithmeticException e) ( StringWriter sw = new StringWriter(); e.printStackTrace(new PrintWriter(sw)); String exceptionAsString = sw.toString(); System.out.println(exceptionAsString); ) ) )
Výstup
java.lang.ArithmeticException: / by zero at PrintStackTrace.main (PrintStackTrace.java:9)
Ve výše uvedeném programu jsme náš program přinutili házet ArithmeticException
vydělením 0 číslem 0.
V catch
bloku použijeme StringWriter
a PrintWriter
pro tisk jakéhokoli daného výstupu na řetězec. Potom vytiskneme trasování zásobníku pomocí printStackTrace()
metody výjimky a zapíšeme ji do zapisovače.
Potom ji jednoduše převede na řetězec pomocí toString()
metody.